IntelliJ 建议错误的@NotNull 注解
IntelliJ suggests wrong @NotNull annotation
IntelliJ 建议在以下程序中导入 com.sun.istack.internal.NotNull
@NotNull 注释(这是错误的):
public class Test implements Comparable<Test> {
@Override
public int compareTo(@NotNull Test o) {
return 0;
}
}
当尝试正确导入时 com.intellij.annotations.NotNull
(我认为)它看起来找不到 class:
从代码中删除导入。 IntelliJ 会要求您再次导入它。它应该表明有多种选择。您需要的注释应该在列表中。
您可以在添加注释之前在警告上按 Alt+Enter,按右键,选择“编辑检查设置”,然后选择“配置注释”并指定要插入的注释。
我发现我必须在我的 Java 项目的 build.gradle
文件中添加以下依赖声明,然后才能导入 org.jetbrains.annotations.NotNull
和 org.jetbrains.annotations.Nullable
注释而不是com.sun.istack.internal.NotNull
和 com.sun.istack.internal.Nullable
注释:
repositories {
mavenCentral()
}
dependencies {
compile 'org.jetbrains:annotations:15.0'
}
对于更高版本的 Intellij,使用 Cmd+Shift+A
(在 MacOS 上)调出 Find Actions
菜单,然后键入 Configure annotations
、select 调出建议Compiler
偏好 window.
然后单击 Add runtime assertions for notnull-annotated methods and parameters
选项旁边的 Configure annotations
按钮。然后它将显示 NonNull 和 Nullable 配置默认值列表。 Select 您想要的默认设置,然后使用选中按钮将其设置为默认设置。
IntelliJ 建议在以下程序中导入 com.sun.istack.internal.NotNull
@NotNull 注释(这是错误的):
public class Test implements Comparable<Test> {
@Override
public int compareTo(@NotNull Test o) {
return 0;
}
}
当尝试正确导入时 com.intellij.annotations.NotNull
(我认为)它看起来找不到 class:
从代码中删除导入。 IntelliJ 会要求您再次导入它。它应该表明有多种选择。您需要的注释应该在列表中。
您可以在添加注释之前在警告上按 Alt+Enter,按右键,选择“编辑检查设置”,然后选择“配置注释”并指定要插入的注释。
我发现我必须在我的 Java 项目的 build.gradle
文件中添加以下依赖声明,然后才能导入 org.jetbrains.annotations.NotNull
和 org.jetbrains.annotations.Nullable
注释而不是com.sun.istack.internal.NotNull
和 com.sun.istack.internal.Nullable
注释:
repositories {
mavenCentral()
}
dependencies {
compile 'org.jetbrains:annotations:15.0'
}
对于更高版本的 Intellij,使用 Cmd+Shift+A
(在 MacOS 上)调出 Find Actions
菜单,然后键入 Configure annotations
、select 调出建议Compiler
偏好 window.
然后单击 Add runtime assertions for notnull-annotated methods and parameters
选项旁边的 Configure annotations
按钮。然后它将显示 NonNull 和 Nullable 配置默认值列表。 Select 您想要的默认设置,然后使用选中按钮将其设置为默认设置。