部署自定义规则之后(如https://github.com/SonarSource/sonar-java/blob/master/java-checks/src/main/java/org/sonar/java/checks/UselessImportCheck.java),当我开始SonarQube 4.2,以下异常声纳启动时抛出:定制声纳规则 - ClassNotFoundException的:com.sonar.sslr.api.AstAndTokenVisitor
Caused by: java.lang.ClassNotFoundException: com.sonar.sslr.api.AstAndTokenVisitor
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50) ~[plexus-classworlds-2.2.3.jar:na]
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244) ~[plexus-classworlds-2.2.3.jar:na]
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230) ~[plexus-classworlds-2.2.3.jar:na]
... 44 common frames omitted
上面提到的类应该在sslr核-1.19.2.jar,这是我的位置找到sonarqube-4.2 /网络/配置/插件/ squidjava/META-INF/lib目录/ sslr核-1.19.2.jar
找到我丢失了一些步骤,以enhnance默认声纳库? 当前安装的插件是(sonarqube-4.2 /扩展/插件):
- sonarqube-4.2 /扩展/插件/声纳的CheckStyle-插件-2.1.jar
- sonarqube-4.2 /扩展/插件/sonar-web-plugin-2.1.jar
- sonarqube-4.2 /扩展/插件/声纳jacoco-插件-2.2.1.jar
- sonarqube-4.2 /扩展/插件/声纳-java的插件 - 2.2 .1.jar
- sonarqube-4.2 /扩展/插件/声纳万无一失-插件-2.2.1.jar
- sonarqube-4.2 /扩展/插件/声纳-PMD-插件-2.2.jar
- sonarqube-4.2 /扩展/插件/声纳的FindBugs-插件-2.2.1.jar
- sonarqube-4.2 /扩展/plugins/sonar-squid-java-plugin-2.2.1.jar
我应该怎么做才能防止上面提到的异常(除去undeploy提到的自定义插件)?
应直接捆绑到自定义插件必要的库?我期望声纳将这些图书馆捆绑在一起。
查看代码示例https://github.com/misak69/misak69-sonar-custom/blob/master/build.gradle – kotomisak