我正在尝试在NetBeans中使用NonNull注释,这是令人头疼的问题。
我按照https://checkerframework.org/manual/#netbeans上的说明操作,可以确认checker-qual.jar
是作为编译库和处理器库添加的。我已启用注释处理并添加org.checkerframework.checker.nullness.NullnessChecker
作为注释处理器。
在源代码中,我可以导入import org.checkerframework.checker.nullness.qual.NonNull
并编译@NonNull
注释。然而,在建设中,我得到了这个:
error: Annotation processor 'org.checkerframework.checker.nullness.NullnessChecker' not found
我需要做些什么才能解决此错误?
答案 0 :(得分:0)
NetBeans处理器路径的说明不正确:他们首先谈论添加checker.jar
,然后提及checker-qual.jar
https://github.com/typetools/checker-framework/blob/master/docs/manual/external-tools.tex#L904
checker.jar
包含实际的注释处理器,应该放在处理器路径上。
我会更新说明。
但是,我们还没有找到将带注释的JDK jdk8.jar
添加到处理器使用的bootclasspath的方法。因此,在NetBeans中不会显示所提供的JDK注释。因此,我们需要从NetBeans中删除对Nullness Checker的支持,直到找到合适的解决方案。