sonarqube java api_SonarQube分析报告无法上传的问题

-- 终极解析办法

INSERT INTO `sonarqube`.`ce_queue` (`uuid`, `task_type`, `component_uuid`, `status`, `submitter_login`, `started_at`, `created_at`, `updated_at`) VALUES ('AVYIhJ4YMA7l-90atYoi', 'REPORT', 'AVYIhJ4YMA7l-90atYoi', 'PENDING', 'Administrator', '1469073061961', '1469073061961', '1469073061961');

由于SonarQube5.6

api/ce/submit

接口报以下异常,导致jenkins构建结果显示为失败~:

Caused by: java.lang.NullPointerException: nullat org.apache.commons.io.IOUtils.copyLarge(IOUtils.java:1792) ~[commons-io-2.4.jar:2.4]

at org.apache.commons.io.IOUtils.copyLarge(IOUtils.java:1769) ~[commons-io-2.4.jar:2.4]

at org.apache.commons.io.IOUtils.copy(IOUtils.java:1744) ~[commons-io-2.4.jar:2.4]

at org.apache.commons.io.FileUtils.copyInputStreamToFile(FileUtils.java:1512) ~[commons-io-2.4.jar:2.4]

at org.sonar.ce.queue.report.ReportFiles.save(ReportFiles.java:50) ~[sonar-server-5.6.jar:na]

java.lang.IllegalStateException: Fail to copy report to file: E:\sonarqube-5.6\data\ce\reports\AVYLKumeMA7l-90atYon.zip

at org.sonar.ce.queue.report.ReportFiles.save(ReportFiles.java:54) ~[sonar-server-5.6.jar:na]

at org.sonar.ce.queue.report.ReportSubmitter.submit(ReportSubmitter.java:79) ~[sonar-server-5.6.jar:na]

at org.sonar.server.ce.ws.SubmitAction.handle(SubmitAction.java:86) ~[sonar-server-5.6.jar:na]

at org.sonar.server.ws.WebServiceEngine.execute(WebServiceEngine.java:107) ~[sonar-server-5.6.jar:na]

问题是

https://github.com/SonarSource/sonarqube/blob/ee3f830341932b261bfc418d541e0dde49f8acd0/server/sonar-server/src/main/java/org/sonar/ce/queue/report/ReportSubmitter.java

里面的报告上传失败,分析其过程是先由scanner把报告压缩为zip文件,然后通过 api/ce/submit 接口上传给sonarqube服务器,服务器在ce_quque表中插入一条挂起状态的后台任务记录。

于是我跳过这个接口,直接在mysql中插入该记录,最终正常

e26d60ace2bd001fbeac35a4bf05b7eb.png

true

=====================================奇怪的问题==============

http://docs.sonarqube.org/display/SCAN/Excluding+Artifacts+from+the+Analysis

VS中的项目排除代码分析后,再恢复的时候,sonar-project.properties 文件中仍然不包括该项目?!!

为解决此问题浪费几个小时。。。看源码,找文档(几乎没有)。。

后来显示的设置非测试项目解决问题

false

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值