我的设置:
错误示例:
16:00:54 [INFO] [23:00:54.219] Sensor JavaSquidSensor 16:00:55 [INFO] [23:00:55.030] Java Main Files AST scan... 16:00:55 [INFO] [23:00:55.030] 1532 source files to be analyzed 16:00:58 [ERROR] [23:00:57.927] Class not found: javax.annotation.Nullable 16:00:58 [ERROR] [23:00:57.928] Class not found: javax.annotation.CheckReturnValue 16:00:58 [ERROR] [23:00:58.114] Class not found: javax.annotation.Nullable
根据这个问题,javax.annotation应该是Java1.7及更高版本的一部分。此外,我尝试将其放在本地Maven存储库中,但没有帮助。
那么,Sonar试图在哪里找到这个软件包?有帮助吗?!?
更新:
根据http://docs.oracle.com/javase/7/docs/api/index.html?javax/annotation/package- summary.html,您期望的类不属于JDK 7。
您要查找的类是Google JSR-305实现的一部分,该实现在此处https://code.google.com/p/jsr-305/source/browse/trunk/ri/src/main/java/javax /annotation/Nullable.java?r=24并将其移至Findbugs:
<dependency> <groupId>com.google.code.findbugs</groupId> <artifactId>jsr305</artifactId> <version>3.0.0</version> </dependency>
根据https://jcp.org/en/jsr/detail?id=305的描述,JSR-305已完成,但处于 休眠 状态,尚未添加到JDK版本中。
希望能帮助到你。