java - 使用 SonarQube Jenkins Plung 从 Jenkins 中的 pom 文件派生强制 SonarQube 属性

标签 java maven jenkins properties sonarqube

我只是使用 Jenkins 的 SonarQube-Plugin 并配置 Jenkins 作业来执行 SonarQube 扫描仪。如果我将 UI 中的分析属性和 sonar-scanner.properties 留空,则强制属性将丢失。根据this至少要问sonar.projectKey应该自动从maven属性<groupId>:<artifactId>派生。如果我设置sonar.projectKeysonar.sources直接属性一切正常。但是我怎样才能实现maven属性<groupId>:<artifactId>被插件使用?

编辑:如果我将 UI 中的分析属性设置为: sonar.projectKey=${POM_GROUPID}:${POM_ARTIFACTID}sonar.sources=.如上所述here 效果很好。但它没有真正的优势,因为我必须将相同的信息插入到每个作业中。如果我可以在像 sonar-scanner.properties 这样的中央文件中设置这些属性,那就更好了,因为所有项目相关信息都是由 Maven 属性设置的。

我的configuration of the Post-Build-Step

最佳答案

对于 Maven 项目,您最好使用 Maven 扫描器。启用“准备 SonarQube 环境”功能,只需使用标准 Maven 步骤即可运行 mvn sonar:sonar。

文档:https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+Jenkins#AnalyzingwithSonarQubeScannerforJenkins-AnalyzingwithSonarQubeScannerforMaven

关于java - 使用 SonarQube Jenkins Plung 从 Jenkins 中的 pom 文件派生强制 SonarQube 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44042046/

相关文章:

java - 自定义 DefaultTableCellRenderer 不更改 jTable 上行的背景颜色

java - Spring/RestTemplate-将实体放置到服务器

tomcat - 具有多个独立服务的项目的 Maven Tomcat 集成

java - 测试后执行 Java 示例并使用 Maven 打包

jenkins - 同一工作空间可处理多个作业

jenkins - 如何从 sh step 命令获取 curl 退出状态?

java - 是否有一个支持 fetchSize 的 mysql JDBC?

java - 如何根据类中有多少个对象来迭代对象来确定其变量内容?

java - 运行 Spring Boot Web 应用程序时 JVM 崩溃

git - hudson/jenkins 一直在 git 中构建坏分支而不是好分支