声纳扫描仪行家在分支建立失败

时间:2018-07-06 20:16:05

标签: java maven sonarqube

我尝试在空pom上建立分支。

$ mvn sonar:sonar -Dsonar.host.url=http://sonar.corp.tld  -Dsonar.login=5846e53_LOGIN_HASH_d7e04e819  -Dsonar.projectKey=out.projectkey -Dsonar.branch.name=apple

我得到了这个错误:

Parameter 'characteristic' must be a key-value pair with the format 'key=value'.

从Maven调试日志中,我看到:

[DEBUG] 21:45:02.528 Upload report
[DEBUG] 21:45:03.459 POST 400 https://sonar.copr.tld/api/ce/submit?projectKey=our.projectkey&projectName=projName&characteristic=branch%253Dapple&characteristic=branchType%253DSHORT | time=928ms

在SonarQube服务器端的日志中,我们可以看到:

172.16.0.14 - - [06/Jul/2018:19:03:42 +0200] "POST /api/ce/submit?projectKey=our.projectkey&projectName=projName&characteristic=branch%253Dapple&characteristic=branchType%253DSHORT HTTP/1.1" 400 103 "-" "ScannerMaven/3.4.1.1168/3.5.0" "SERVER_ID"

声纳服务器:7.1

Maven版本3.5.4

我还尝试了最新的声纳Maven插件。

我们发现问题似乎是branch URL参数的双重编码的branchTypecharacteristics

有人遇到过那样的人吗?

谢谢, zsolt

2 个答案:

答案 0 :(得分:0)

我解决了这个问题。

背景信息: 我们的声纳服务器在httpS后面工作,并且apache将所有请求从http重定向到https

所以,好的Maven调用是:

$ mvn sonar:sonar -Dsonar.host.url=https://sonar.corp.tld -Dsonar.login=5846e53_LOGIN_HASH_d7e04e819 -Dsonar.projectKey=out.projectkey -Dsonar.branch.name=apple

区别是 -Dsonar.host.url=https://sonar.corp.tld

答案 1 :(得分:0)

对于我们来说,将sonar.branch.name设置为空值时会发生相同的错误。如果缺少此属性,则一切正常。但是当它为空时,请求将包含一个参数branch =(无),这就是特征错误消息所抱怨的,因为它只是key =(无),而不是key = value。

相关问题