I want use @Nullable
annotation to eliminate NullPointerExceptions
.
I found some tutorials on the net, I noticed that this annotation comes from the package javax.annotation.Nullable
;
but when I import it a compilation error is generated: cannot find symbol
You need to include a jar that this class exists in. You can find it here
If using Maven, you can add the following dependency declaration:
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
<version>3.0.2</version>
</dependency>
and for Gradle:
dependencies {
testImplementation 'com.google.code.findbugs:jsr305:3.0.2'
}
The artifact has been moved from net.sourceforge.findbugs
to
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
<version>3.0.0</version>
</dependency>
If you are using Gradle, you could include the dependency like this:
repositories {
mavenCentral()
}
dependencies {
compile group: 'com.google.code.findbugs', name: 'jsr305', version: '3.0.0'
}
In case someone has this while trying to compile an Android project, there is an alternative Nullable implementation in android.support.annotation.Nullable
. So take care which package you've referenced in your import
s.
If anyone has this issue when building a Maven project created in IntelliJ IDEA externally, I used the following dependency instead of the answer:
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>15.0</version>
</dependency>
Using this will allow the project to build on IntelliJ IDEA and by itself using Maven.
You can find it here.
you can add latest version of this by adding following line inside your gradle.build.
implementation group: 'com.google.code.findbugs', name: 'jsr305', version: '3.0.2'
I am using Guava which has annotation included:
(Gradle code )
compile 'com.google.guava:guava:23.4-jre'
In the case of Android projects, you can fix this error by changing the project/module gradle file (build.gradle) as follows:
dependencies { implementation 'com.android.support:support-annotations:24.2.0' }
For more informations, please refer here.
来源:https://stackoverflow.com/questions/19030954/cant-find-nullable-inside-javax-annotation