使用哪个 sonar-maven-plugin 版本?

26

我想知道应该使用哪个版本的sonar-maven-plugin。

据我所知,有一个org.codehaus.mojo版本和两个org.codehaus.sonar版本(sonar-maven3-plugin, sonar-maven-plugin)。

据我理解,sonar-maven3-plugin现在已被弃用,应改用org.codehaus.sonar:sonar-maven-plugin。但是,这些org.codehaus.sonar版本与特定版本的sonar server绑定,因此直接使用它们可能没有意义。为了能够处理这种情况,有一个org.codehaus.mojo:sonar-maven-plugin,它检查服务器上的sonar版本,从而检查要使用哪个org.codehaus。sonar:sonar-maven-plugin。

因此,为了拥有独立于Sonar Server版本的maven pom,最好使用org.sonar.mojo:sonar-maven-plugin:RELEASE版本以确保安全。

我的理解正确吗?

有没有其他需要考虑的事情?

谢谢

2个回答

16

文档页面所述(参见“使用Maven 3分析的项目”),您需要使用的插件是org.codehaus.mojo:sonar-maven-plugin,而不是内部插件。


我们如何将 org.codehaus.sonar 和 org.codehaus.mojo sonar-maven-plugins 之间的版本号进行关联? - Russ Jackson
假设“org.codehaus.mojo:sonar-maven-plugin”曾经是一个外观插件,用于不依赖于SonarQube API的内部插件。它通过向服务器发出WS调用来检测要使用哪个版本的内部插件,以了解安装了哪个版本的SonarQube。我说“曾经是一个外观插件”,因为在即将推出的SQ 5.2中,内部插件将不再需要,因此从代码库中删除。 - Fabrice - SonarSource Team
3
org.codehaus.sonar:sonar-maven-plugin 这个插件是仅适用于 Maven2 的插件吗? - Gijs

2
当我们使用sonarserver ver 3.7.1时,我们使用org.codehaus.sonar:sonar-maven-plugin。 一旦我们从Sonar Server迁移到SonarQube server 4.5+,我们需要使用org.codehaus.mojo:sonar-maven-plugin。 目前在我们的项目中,我们需要使用jdk 6编译代码(因为它是旧项目),并使用java 7运行sonarqube server ver 4.5.7分析 因此,我们使用java 6运行命令mvn clean org.jacoco:jacoco-maven-plugin:0.7.4.201502262128:prepare-agent install,而在运行sonar分析时,我们将jvm更改为java 7并执行命令mvn org.codehaus.mojo:sonar-maven-plugin:2.4:sonar -Dsonar -Dsonar.host.url=http://localhost:9000 -Dsonar.dynamicAnalysis=true

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接