我只是使用 Jenkins 的 SonarQube-Plugin 并配置 Jenkins 作业来执行 SonarQube 扫描仪。如果我将 UI 中的分析属性和 sonar-scanner.properties 留空,则强制属性将丢失。根据this至少要问sonar.projectKey
应该自动从maven属性<groupId>:<artifactId>
派生。如果我设置sonar.projectKey
和 sonar.sources
直接属性一切正常。但是我怎样才能实现maven属性<groupId>:<artifactId>
被插件使用?
编辑:如果我将 UI 中的分析属性设置为:
sonar.projectKey=${POM_GROUPID}:${POM_ARTIFACTID}
和sonar.sources=.
如上所述here
效果很好。但它没有真正的优势,因为我必须将相同的信息插入到每个作业中。如果我可以在像 sonar-scanner.properties 这样的中央文件中设置这些属性,那就更好了,因为所有项目相关信息都是由 Maven 属性设置的。
最佳答案
对于 Maven 项目,您最好使用 Maven 扫描器。启用“准备 SonarQube 环境”功能,只需使用标准 Maven 步骤即可运行 mvn sonar:sonar。
关于java - 使用 SonarQube Jenkins Plung 从 Jenkins 中的 pom 文件派生强制 SonarQube 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44042046/