如何阻止IntelliJ在Java中自动导入org.jetbrains.annotations?
我的超类有一个带有使用javax注释的参数的方法签名,如下所示:
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
public abstract class Nanana {
// ...
protected abstract void nanaFunction(
@Nonnull final Parameter parParameter1,
@Nullable final Parameter parParameter2
) { /* ... */ }
}
当我在不同的文件中从这个类继承而不手动导入注释时,它会像这样自动完成我的覆盖(注意注释导入):
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class ConcreteNanana extends Nanana {
// ...
@Override
public void nanaFunction(
@NotNull final Parameter parParameter1,
@Nullable final Parameter parParameter2
) { /* ... */ }
}
如何配置 IntelliJ 以导入与超类相同的注释?我正在使用 IntelliJ 2020.3.3 Ultimate。
回答
正如这里提到的
这是一个缺陷,您可以通过以下方式解决它:
Settings --> Inspections --> Java --> Probable bugs --> Nullability problems --> @NotNull/@Nullable problems --> Configure Annotations
并设置默认值
javax.annotation.Nullable
javax.annotation.Nonnull
重新启动,应该没问题。
THE END
二维码