如何使用 gradle 或 maven 一次只对一个模块进行声纳分析?



给定如下所示的 gradle 项目结构

parent
- moduleA
- moduleB

可以使用 gradle 插件"org.sonarqube"对整个项目结构执行声纳分析,

并带有命令
gradle sonarqube

当我尝试仅对模块 A 或模块 B 执行分析时,SonarQube 构建任务中会出现异常:

org.sonar.api.utils.MessageException: Validation of project failed:
o Component (uuid=XXX, key=parent:moduleA) is not a project
o The project "parent:moduleA" is already defined in SonarQube but as a module of project "parent". If you really want to stop directly analysing project "parent", please first delete it from SonarQube and then relaunch the analysis of project "parent:moduleA".

parent/build.gradle 声纳配置:

sonarqube {
properties {
...
property "sonar.projectKey", "parent"
}
}

parent/moduleA/build.gradle 声纳配置

sonarqube {
properties {
...
property "sonar.projectKey", "parent:moduleA"
}
}

我是否错过了什么,或者可能无法分析项目的指定模块?

你不能对SonarQube项目进行部分分析。

要么每次都分析整个项目。或者,您首先将每个Gradle模块作为单独的SonarQube项目进行分析。

相关内容

最新更新