问题
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
回答1:
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'
}
回答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>
回答3:
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'
}
回答4:
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.
回答5:
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.
回答6:
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'
回答7:
I am using Guava which has annotation included:
(Gradle code )
compile 'com.google.guava:guava:23.4-jre'
回答8:
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