SonarQube 无法在空实例“模块已经是项目的一部分”上执行目标

Posted

技术标签:

【中文标题】SonarQube 无法在空实例“模块已经是项目的一部分”上执行目标【英文标题】:SonarQube fail to execute goal on empty instance "module already part of project" 【发布时间】:2016-03-23 13:09:45 【问题描述】:

我分析了一个项目,然后通过 SonarQube 网络界面将其删除。这是全新安装的 SonarQube 5.1.2。

在 Web 界面中,我再也看不到任何项目。

当我运行 mvn sonar:sonar 时,分析失败并显示类似于

的消息
[ERROR] Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.7.1:sonar (default-cli) on project myproject: Module "somesubmodule" is already part of project "myotherprojectkey"

所以我认为在多模块Maven项目中,通过Web界面删除项目只会将顶层模块作为项目删除。所有其他较低级别的模块将保留在数据库中,防止代码分析。

这些“项目”无法通过网络界面删除,因为它们是不可见的。

我检查了数据库,确实projects表根本不为空。

有没有办法以一致的方式从项目数据中清除数据库?

我不想仅仅为了删除项目而重新安装 SonarQube。

【问题讨论】:

【参考方案1】:

应该正确删除子模块,但为了这样做,您可以在设置 - 系统 - 批量删除下检查ghost data。

您还可以查询api/projects/index?subprojects=true WebService 以检查somesubmodule 是否出现在某处。

【讨论】:

以上是关于SonarQube 无法在空实例“模块已经是项目的一部分”上执行目标的主要内容,如果未能解决你的问题,请参考以下文章

无法访问 SonarQube 服务器 [https://sonar.example.org]

何时在空实例上调用成员函数会导致 C++11 中的未定义行为? [复制]

声纳:复制/高可用性或群集解决方案

SonarQube:是数据库还是实例的排序规则?

SonarQube4.4+Jenkins进行代码检查实例之三-单元測试分析

无法从列表视图中获取项目位置:尝试在空对象引用上调用虚拟方法...