在现有分析之前注入声纳分析

TER*_*ytE 3 java sonarqube

前段时间我设置Sonar来扫描一个开发项目.每晚使用cronjob调用扫描.有一次我遇到了运行cronjob的机器的问题,并且错过了一些夜间扫描.我从错过的一天下载了源代码,并使用Sonar Runner完成了新的声纳扫描.正如我所料,数据显示在Sonar中是最近的扫描,这不是我想要的.我想将扫描注入特定日期,以便我可以填写扫描未运行的日子.我没有在sonar-project.properties文件中看到这样做的选项.

有没有办法可以运行声纳扫描,但是数据是在我选择的日期而不是当前日期输入的,所以它会显示在我的声纳时间线中的适当位置?

Mar*_*nor 5

我没有使用它们,但Sonar文档描述了可以进行历史分析的其他属性.具体来说,它是您需要设置的"sonar.projectDate"属性.

您尚未指定要使用的Java构建技术.我在下面列举了一些例子.

最后,您是否考虑过设置Jenkins来启动Sonar而不是cron?运行Jenkins的很多好理由,但如果你使用Maven作为构建工具,Jenkins Sonar插件使Sonar集成变得非常容易.

Maven的例子

mvn clean install -DskipTests=true
mvn -Dsonar.projectDate=2012-09-01 sonar:sonar
Run Code Online (Sandbox Code Playgroud)

ANT的例子

ant -Dsonar.projectDate=2012-09-01 clean sonar
Run Code Online (Sandbox Code Playgroud)

注意:

  • 这假设你有一个名为"声纳"的目标设置来编译,测试和运行声纳.