java.lang.ClassNotFoundException:org.sonar.java.model.JavaTree"依赖问题创建一个声纳插件"

时间:2014-07-17 02:44:50

标签: java plugins sonarqube sonar-runner

我正在创建一个插件来添加一些自定义规则。首先,我的工作基于:/sonar-examples/plugins/java-custom-rules。这个示例非常有效,我也创建了一些规​​则。

尝试根据UnusedPrivateFieldCheck.java version 2.1创建规则时遇到问题。 sonarRunner失败并显示以下消息:

  

java.lang.ClassNotFoundException:org.sonar.java.model.JavaTree

失败的行是:

AstNode identifierAstNode = ((JavaTree) tree).getAstNode().getFirstChild(JavaTokenType.IDENTIFIER);

在规则版本2.3 JavaTree未使用,但遗憾的是 声纳版本4.3.2适用于版本2.1

可以从插件类路径共享访问JavaTree类吗?有特殊配置吗?我的pom.xml上缺少什么?我必须等到2.3版本吗?

1 个答案:

答案 0 :(得分:1)

JavaTree不属于org.sonar.plugins.java.api,因此无法从插件类路径共享中访问以实现您自己的规则。

此课程仅供内部使用。