Description
Error Prone is a static analysis tool for Java that catches common programming mistakes at compile-time.
Error Prone alternatives and similar libraries
Based on the "Code Analysis" category.
Alternatively, view Error Prone alternatives based on common mentions on social networks and blogs.
-
Checkstyle
Checkstyle is a development tool to help programmers write Java code that adheres to a coding standard. By default it supports the Google Java Style Guide and Sun Code Conventions, but is highly configurable. It can be invoked with an ANT task and a command line program. -
Sourcetrail
Sourcetrail - free and open-source interactive source explorer -
Spotbugs
SpotBugs is FindBugs' successor. A tool for static analysis to look for bugs in Java code. -
NullAway
A tool to help eliminate NullPointerExceptions (NPEs) in your Java code with low build-time overhead -
SonarJava
:coffee: SonarSource Static Analyzer for Java Code Quality and Security -
Spoon
Spoon is a metaprogramming library to analyze and transform Java source code. :spoon: is made with :heart:, :beers: and :sparkles:. It parses source files to build a well-designed AST with powerful analysis and transformation API. -
dotenv-linter
⚡️Lightning-fast linter for .env files. Written in Rust 🦀 -
Codacy
Continuous static analysis, code coverage, and software metrics to automate code reviews.
Collect and Analyze Billions of Data Points in Real Time
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Error Prone or a related project?
README
Error Prone
Error Prone is a static analysis tool for Java that catches common programming mistakes at compile-time.
public class ShortSet {
public static void main (String[] args) {
Set<Short> s = new HashSet<>();
for (short i = 0; i < 100; i++) {
s.add(i);
s.remove(i - 1);
}
System.out.println(s.size());
}
}
error: [CollectionIncompatibleType] Argument 'i - 1' should not be passed to this method;
its type int is not compatible with its collection's type argument Short
s.remove(i - 1);
^
(see https://errorprone.info/bugpattern/CollectionIncompatibleType)
1 error
Getting Started
Our documentation is at errorprone.info.
Error Prone works with Bazel, Maven, Ant, and Gradle. See our installation instructions for details.
Developing Error Prone
Developing and building Error Prone is documented on the wiki.
Links
- Mailing lists
- Javadoc
- Pre-release snapshots are available from Sonatype's snapshot repository.