2015-12-02 64 views
1

我有声呐3.7.x的规则集备份,并且想要导入声呐5.2。此规则集具有PMD,CheckStyle和Findbugs的规则。当我尝试通过GUI时,导入没有任何错误,但没有导入规则(0规则)。然后我尝试使用curl导入规则集的Sonar API。尽管结果(ruleFailures:600)显示在XML中没有导出600个规则中的任何规则(与GUI的行为相同),但此命令也会成功。无法在声呐中导入质量配置文件规则集5.2

-bash-4.1$ curl -X POST -u admin:admin -F "[email protected]_standard_java_600.xml" -v http://XX.XX.40.70:9080/api/profiles/restore 
* About to connect() to XX.XX.40.70 port 9080 (#0) 
* Trying XX.XX.40.70... connected 
* Connected to XX.XX.40.70 (XX.XX.40.70) port 9080 (#0) 
* Server auth using Basic with user 'admin' 
> POST /api/profiles/restore HTTP/1.1 
> Authorization: Basic YWRtaW46YWRtaW4= 
> User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.3.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2 
> Host: XX.XX.40.70:9080 
> Accept: */* 
> Content-Length: 105883 
> Expect: 100-continue 
> Content-Type: multipart/form-data; boundary=----------------------------b413fb6533eb 
> 
< HTTP/1.1 100 Continue 
< HTTP/1.1 200 OK 
< Server: Apache-Coyote/1.1 
< Set-Cookie: JSESSIONID=CE9FC5FE32939BE5ECC4FC64324B238D; Path=/; HttpOnly 
< X-Runtime: 16162 
< ETag: "c48a79cd01c8066aa814d5755e0c29ed" 
< Cache-Control: private, max-age=0, must-revalidate 
< X-Frame-Options: SAMEORIGIN 
< X-XSS-Protection: 1; mode=block 
< X-Content-Type-Options: nosniff 
< Content-Type: application/json;charset=utf-8 
< Content-Length: 194 
< Date: Wed, 02 Dec 2015 15:16:15 GMT 
< 
* Connection #0 to host XX.XX.40.70 left intact 
* Closing connection #0 
{"profile":{"key":"java-my-standard-63451","name":"My Standard","language":"java","isDefault":false,"isInherited":false,"languageName":"Java"},"ruleSuccesses":0,"ruleFailures":600} 

我比较了我的文件声纳路的Java规则的出口,我不发现XML格式可能从3.x版变更为5.x的任何声纳专家都可以帮助解决这个问题吗?

+1

您是否安装了Checkstyle,PMD和FindBugs插件? IIRC,他们是3.2的一部分,但事实不再是这样。 –

+0

非常感谢G.Ann,事实上这一直是问题所在。我安装了所有这些插件,因为它们不再支持Squid。而且导入工作,但有一部分Sonar有点恼人,不能暗示我不导入规则的真正原因;) – dchucks

回答

1

正如G.Ann上面的评论指出的那样,这个问题涉及到新Sonar 5.2安装中缺少Findbugs,Checkstyle和PMD插件,因为它们不再支持Squid的开箱即用。一旦安装导入工作,虽然有些恼人的声纳部分没有暗示真正的原因不导入规则。

相关问题