情况:
我想用由詹金斯(1.642.4)触发的SonarQube(5.4)分析我的项目。它是使用maven构建的Java项目。
我看到两种触发分析的方法:
发布构建操作“使用maven进行SonarQube分析”,但 已弃用 ,所以我不想使用它
推荐的构建后步骤是“执行SonarQube扫描仪”。
问题:
如果我使用了不赞成使用的Post Build Action,那么声纳项目配置的属性会自动从项目pom派生。
我使用推荐的后期构建步骤,但收到异常
您必须为“未知”定义以下必需属性:sonar.projectKey,sonar.projectName,sonar.projectVersion,sonar.sources
不希望的解决方案 :
解决方案是通过java项目中的sonar-project.properties文件或Jenkins步骤中的参数提供所需的属性。
恕我直言:这是重复的。所有相关信息都在Maven
pom中定义:projectKey可以从artifactId派生,projectName和projectVerstion是maven中的相同属性。特别是projectVersion至关重要。我不想在每个发行版之后更新项目版本(或在发行插件中编写一些代码以自动更新它)。
我想要的是
我想在Jenkins中使用推荐的Post Build
Step,而无需为我的所有项目重新定义所有项目属性以使声纳开心。相反,声纳/詹金斯/插件/无论应该从我的Maven
pom文件中获取属性。我可以使用其他插件吗?我可以重新配置我的Jenkins-Sonar-Plugin吗?
我不想在pom /项目中提供任何声纳特定的信息,因为该项目不应该关心声纳。它应仅包含构建项目所需的信息。