如何从声纳分析中排除一些maven项目

时间:2014-04-10 07:10:07

标签: java eclipse maven eclipse-plugin sonarqube

我有很多(比方说10(A,B,C ...))eclipse插件,这是基于maven。

我有一个主pom文件,其中包含所有其他插件项目。 现在通过构建具有sonar:sonar目标的主文件,它将构建所有插件。

所以我的问题:是否有任何方法可以排除一些插件,让我们说A和C.?

3 个答案:

答案 0 :(得分:43)

有几种方法,其中一种方法是在要跳过的项目/模块的sonar.skip内添加pom.xml属性。

这不包括SonarQube分析的项目:

<properties>
    <sonar.skip>true</sonar.skip>
</properties>

这也适用于Jenkins并运行Sonar作为后期构建操作。

有关详细信息,请参阅:Analyzing with SonarQube Scanner for Maven

答案 1 :(得分:1)

  

注意:此版本自版本4.3以来已弃用,不应再使用。

documentation,可以选择使用sonar.skippedModules

跳过模块

您也可以从声纳模块部分here中记录的声纳管理页面执行此操作。

答案 2 :(得分:1)

我对正式记录的sonar.skip并不满意:当我将其设置在POM子模块中时,我看到了

[INFO] Delaying SonarQube Scanner to the end of multi-module project

在应该包含的模块之后,然后

[INFO] sonar.skip = true: Skipping analysis

在反应堆建造结束时,没有分析/上载。

相反,我在根POM中将sonar.exclusions定义为pattern,与要跳过的子模块中使用的源文件(按包路径)匹配。这似乎奏效了。


顺便说一句,在根POM中设置sonar.projectKey无效;声纳抱怨

Project '…' can't have 2 modules with the following key: …

已通过将其移至.mvn/maven.config来解决:

-Dsonar.projectKey=…
相关问题