1

我有一个情况,比如我有两个项目。对于一个项目,我能够成功地运行分析。第二个项目是新项目,它完全使用项目 1 的代码、相同结构和相同模块,我们可以说它是项目 1 的扩展。当我运行代码分析时,它说模块已经是项目 1 的一部分

[ERROR] Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.7.1:sonar
         (default-cli) on project citi-sgp-au:
         Module "com.xxxx.xxxx:xxxxxx" is already part of project "xxxx-xxx-xxx222"
         -> [Help 1]

对此有何指导?

4

2 回答 2

1

SonarQube无法分析具有相同 ID(例如groupIdartifactId)的 2 个不同项目。

您可以更改两个项目之一的 id 或使用sonar.branch属性。

来自SonarQube 维基

sonar.branch - 管理 SCM 分支。同一个项目的两个分支在 SonarQube 中被认为是不同的项目。因此,在分支 B1 中的项目 A 中发现的问题与在分支 B2 中为该项目 A 发现的问题没有链接。目前,在 B1 中解决 B2 的问题时,无法自动解决 B2 的问题,因为 A-B1 和 A-B2 再次被视为单独的项目。

于 2015-11-29T20:41:39.330 回答
0

因为您使用相同的代码和相同的结构,我假设两个项目的模块最终具有相同的键。在 SonarQube 中,不可能有一个模块属于多个项目。

所以解决方案是确保您的第二个项目的模块具有唯一的键。

注意:如果您使用 Maven,这非常简单:只需确保您的第二个项目具有不同的 groupId。

于 2015-11-24T11:42:32.177 回答