Sonar Qube中的项目隔离

26

我有一个项目结构,如下所示。

enter image description here

Cloud projects 文件夹中有四个类型的项目 (eco-projects, evn-projects, met-projects, svn-projects)

每种类型的项目再次包含四个不同的项目,例如在eco-projects中我们有eco-1-projects, eco-2-projects, eco-3-projects, eco-4-projects.

我已经将其集成到Sonar Qube中,只获得了一个名为Cloud projects的项目,如下所示,当显示所有组合项目的源代码时。

enter image description here

我们可以在Sonar Qube中拥有类似可视化的层次结构吗?例如,当我在Sonar仪表板中单击Cloud Projects时,它将导航到另外四个项目,例如eco-projects,evn-projects,met-projects,svn-projects,现在,假设我点击eco-projects,它会显示我eco-1-projects,eco-2-projects,eco-3-projects,eco-4-projects,现在当我点击eco-1-projects时,它将显示其源代码相关的仪表板和覆盖范围。

我的sonar-project.properties如下所示:

# Required metadata
sonar.projectKey=cloud-projects
sonar.projectName=Cloud Projects
sonar.projectVersion=1.0
# Language
sonar.language=java

# Encoding of the source files
sonar.sourceEncoding=UTF-8

sonar.modules=eco-projects, evn-projects, met-projects, svn-projects

eco-projects.sonar.projectName=eco-projects
eco-projects.sonar.language=java
eco-projects.sonar.modules=eco-1-projects, eco-2-projects, eco-3-projects,eco-4-projects

eco-projects.eco-1-projects.sonar.projectName=eco-1-projects
eco-projects.eco-1-projects.sonar.sources=docroot/WEB-INF/src
eco-projects.eco-1-projects.sonar.language=java

eco-projects.eco-2-projects.sonar.projectName=eco-2-projects
eco-projects.eco-2-projects.sonar.sources=docroot/WEB-INF/src
eco-projects.eco-2-projects.sonar.language=java

eco-projects.eco-3-projects.sonar.projectName=eco-3-projects
eco-projects.eco-3-projects.sonar.sources=docroot/WEB-INF/src
eco-projects.eco-3-projects.sonar.language=java

eco-projects.eco-4-projects.sonar.projectName=eco-4-projects
eco-projects.eco-4-projects.sonar.sources=docroot/WEB-INF/src
eco-projects.eco-4-projects.sonar.language=java
:
:
:

有人可以告诉我如何解决这个问题吗?


连接到SonarQube数据库直接并创建自己的HTML/JavaScript页面是否可能作为解决方案的一部分? - ProgrammersBlock
1
@pyb 这个问题不适合于软件工程 - 它很快就会被投票否决并关闭,参见我的工具问题应该放在哪里? 推荐阅读:**什么样的问题适合在软件工程(以前称为程序员)上提问?Stack Overflow指南** - gnat
2个回答

1
据我所知,Sonar不支持这样的功能。它只支持项目、模块和文件。这意味着你已经添加了(至少?)一个Sonar无法处理的额外层。
也许你可以跳过顶层的“云项目”,为每种项目类型创建一个sonar.properties文件?以生态项目为例,你需要为其创建一个sonar.properties文件,并将eco-1-projects、eco-2-projects等定义为模块。这意味着生态项目在Sonar仪表板上可见,如果你点击它并进入“代码”,你将看到所有的模块。点击一个模块以查看文件(假设这是你的文件级别)。
顺便说一句,你还可以使用Sonar仪表板作为额外的层,例如将所有生态项目添加到一个仪表板中。

0
在SonarQube的菜单中,您有:“问题”,“度量”,“代码”和“仪表板”。
“代码”是您想要的。在那里,您将找到按“组件”(=每个子项目一个)分解的内容。 每行都以一个小图标开头(一个带有箭头的框,带有工具提示说:“打开组件页面”)。这将限制SQ的范围到此特定组件。
例如,在此处尝试:https://sonarqube.com/code?id=org.apache.hbase%3Ahbase

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接