26

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

在此处输入图像描述

云项目文件夹有四种类型的项目(eco-projects、evn-projects、met-projects、svn-projects

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

我已将其集成到 Sonar Qube 中,当显示所有组合项目源代码时,我只有一个项目作为云项目,如下所示。

在此处输入图像描述

我们能否在 Sonar Qube 中有一个类似于可视化的层次结构,例如,当我单击 Sonar Dashbaord 中的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
:
:
:

谁能告诉我一些解决方案

4

2 回答 2

1

AFAIK Sonar 不支持这样的东西。它只支持项目、模块和文件。这意味着您添加了(至少?) 1 个额外的层,Sonar 无法使用。

也许您可以跳过顶部的“云项目”级别并为每个项目类型创建一个 sonar.properties 文件?如果我们以生态项目为例,您需要为此创建一个 sonar.properties 文件,并将 eco-1-projects、eco-2-projects 等定义为模块。这意味着生态项目在 Sonar 仪表板中可见,如果您单击它并转到“代码”,您将看到所有模块。单击一个模块以查看文件(假设在您的情况下是文件级别)。

顺便说一句,您还可以将 Sonar Dashboards 用作额外的层,例如通过在 1 个仪表板中添加所有生态项目。

于 2017-10-15T08:55:19.590 回答
0

在 SonarQube 的菜单中,您有:“问题”、“措施”、“代码”和“仪表板”。

“代码”是您想要的。在那里,您将找到按“组件”划分的细分(= 每个子项目一个)。每行都以一个小图标开头(一个带有箭头的框,工具提示说:“打开组件的页面”)。这会将 SQ 的范围限制在这个特定的组件上。

例如在这里尝试一下:https ://sonarqube.com/code?id=org.apache.hbase%3Ahbase

于 2017-03-07T11:09:21.827 回答