命令 mvn sonar:sonar
执行的 Maven 生命周期阶段是什么?
虽然我看到了在屏幕上运行的日志,但在非常高的水平上,我发现了测试、安装
。
考虑下面的例子,
我有一个像下面这样的maven项目
maven-root
maven-child-1
maven-child-2
考虑以下场景,我已在根级别按顺序完成它们
mvn clean install
mvn sonar:sonar
-- 查看报告- 通过添加一些测试用例来增加代码覆盖率来修改 child-2
- 运行
mvn sonar:sonar
我对测试用例的更改没有反射(reflect)在报告中。
- 我已经从 sonarqube 中删除了报告
mvn sonar:sonar
仍然会生成旧报告。
简而言之,我是否需要执行 mvn clean install
然后执行 mvn sonar:sonar
?
如果 mvn sonar:sonar
涵盖执行 mvn clean install
,为什么报告给我旧数字?
最佳答案
mvn sonar:sonar
不会触发 mvn clean install
执行。它仅触发 Maven Surefire 插件执行。
这就是为什么您需要在每次分析之前执行 mvn clean install
- 否则您编译的类将不是最新的,因此 Surefire 执行将不包括最近的修改。
关于java - mvn sonar :sonar do? 是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21013399/