如何在 SonarQube 中使用增量模式?

How to use incremental mode in SonarQube?

我正在尝试 fiddle 使用 SonarQube,现在我正在学习 incremental 模式。据我了解,它应该只分析更改的文件。

所以我的第一个测试只是在我们的项目上 运行 SonarQube 两次,没有任何变化。我 运行 SonarQube (5.1.2) 本地安装在 windows 7 64 位机器上,带有 SSD 驱动器和 I7 CPU。我们使用 java 1.7 和 Maven 3.3.3。我们的项目相当大(~570 个模块)的 maven,其中大部分是 java 代码。在我 运行 一个 jacocoprepare-agent 以及我的单元测试之后,我明白是时候 运行 sonar:sonar 并创建一个报告。

所以我尝试的是:

mvn sonar:sonar -Dsonar.analysis.mode=incremental -Dsonar.host.url=http://localhost:9000 -Dsonar.java.coveragePlugin=jacoco

这 运行s 20 分钟。好的,现在我再次 运行 相同的命令而不做任何更改,它仍然 运行 相同的 20 分钟

所以我的问题是 - 是否有人可以向我解释如何正确使用增量模式?我很难理解我做错了什么,据我所知,第二个 运行 必须快得多,否则我看不出这里比预览模式有任何优势。

谢谢马克

增量模式将仅分析自服务器上最近 "regular" 分析以来更改的文件。所以在你的情况下,你应该首先 运行 一个正常的(现在称为 "publish")分析:

mvn sonar:sonar -Dsonar.java.coveragePlugin=jacoco

那么你就可以使用增量模式了:

mvn sonar:sonar -Dsonar.analysis.mode=incremental -Dsonar.java.coveragePlugin=jacoco