SonarQube 5.5 API-组件密钥约定
我正在尝试使用“”端点从SonarQube实例提取覆盖率数据。这是一个多模块java项目。使用POSTMAN,我可以使用“componentKey”查询单个java文件,它由如下字符串组成SonarQube 5.5 API-组件密钥约定,sonarqube,sonarqube-web,Sonarqube,Sonarqube Web,我正在尝试使用“”端点从SonarQube实例提取覆盖率数据。这是一个多模块java项目。使用POSTMAN,我可以使用“componentKey”查询单个java文件,它由如下字符串组成 [maven-groupId]:[maven-artifactId]:[path to java file] 这会生成一个字符串 com.i.pc.e.components.o:om-wf-e:src/main/java/com/i/e/o/wf/actions/Xxxx.java 并返回此json响应
[maven-groupId]:[maven-artifactId]:[path to java file]
这会生成一个字符串
com.i.pc.e.components.o:om-wf-e:src/main/java/com/i/e/o/wf/actions/Xxxx.java
并返回此json响应
{
"component": {
"id": "AVci_6G7elHqFlTqG_OC",
"key": "com.i.pc.e.components.o:om-wfl-e:src/main/java/com/i/e/o/wf/actions/Xxxx.java",
"name": "Xxxx.java",
"qualifier": "FIL",
"path": "src/main/java/com/i/e/om/wf/actions/Xxxxx.java",
"language": "java",
"measures": []
},
"metrics": [
{
"key": "coverage",
"name": "Coverage",
"description": "Coverage by unit tests",
"domain": "Coverage",
"type": "PERCENT",
"higherValuesAreBetter": true,
"qualitative": true,
"hidden": false,
"custom": false,
"decimalScale": 1,
"bestValue": "100.0",
"worstValue": "0.0"
}
]
}
这对于一次性请求很好,但我需要对许多Java源文件执行此操作,我手头没有Maven的详细信息
“componentKey”的格式是否有约定或文档
理想情况下,我希望在“ComponentKey”中定义完整的包和java源文件名,或者是否有办法通过其他REST API调用查找“componentId”?使用服务在树(或树中的子树)中迭代从项目开始,将sonar.projectKey
值输入baseComponentKey
参数。请特别注意strategy
参数,该参数确定调用检索的子集合
一旦你有了每个孩子的数据,就应该很容易通过迭代来获取他们的度量值。使用该服务来迭代你的树(或树中的子树),从你的项目开始,并将你的sonar.projectKey
值输入baseComponentKey
参数。请特别注意strategy
参数,该参数确定调用检索的子集合
一旦你有了每个孩子的数据,就应该很容易通过迭代获得他们的测量值。谢谢@g-ann-sonarsource-team-但这仍然假设我知道“baseComponentKey”或“baseComponentId”。是否有一个搜索或查询api,我可以在其中传递完整的类和包名?我稍微扩展了@emeraldjava。看看这是否有助于hanks@g-ann-sonarsource-team——但这仍然假设我知道“baseComponentKey”或“baseComponentId”。是否有一个搜索或查询api,我可以在其中传递完整的类和包名?我稍微扩展了@emeraldjava。看看这是否有帮助