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', '', '', '');
由于SonarQube5.6
api/ce/submit
接口报以下异常,导致jenkins构建结果显示为失败~:
Caused by: java.lang.NullPointerException: null
at 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中插入该记录,最终正常

<Compile Include="MyFile.cs">
<!-- Exclude the file from analysis -->
<SonarQubeExclude>true</SonarQubeExclude>
</Compile>
=====================================奇怪的问题==============
http://docs.sonarqube.org/display/SCAN/Excluding+Artifacts+from+the+Analysis
VS中的项目排除代码分析后,再恢复的时候,sonar-project.properties 文件中仍然不包括该项目?!!
为解决此问题浪费几个小时。。。看源码,找文档(几乎没有)。。
后来显示的设置非测试项目解决问题
<PropertyGroup>
<!-- 显式标记该项目不是测试项目 ,默认是由msbuild scanner自动检测的-->
<SonarQubeTestProject>false</SonarQubeTestProject>
</PropertyGroup>
SonarQube分析报告无法上传的问题的更多相关文章
- Spring 文件上传MultipartFile 执行流程分析
在了解Spring 文件上传执行流程之前,我们必须知道两点: 1.Spring 文件上传是基于common-fileUpload 组件的,所以,文件上传必须引入此包 2.Spring 文件上传需要在X ...
- Web开发安全之文件上传安全
很长一段时间像我这种菜鸡搞一个网站第一时间反应就是找上传,找上传.借此机会把文件上传的安全问题总结一下. 首先看一下DVWA给出的Impossible级别的完整代码: <?php if( iss ...
- php之文件上传简单介绍
要声明的form表单格式 <form action="act.php" method="post" enctype="multipart/for ...
- 013_HDFS文件合并上传putmarge功能(类似于hadoop fs -getmerge)
场景 合并小文件,存放到HDFS上.例如,当需要分析来自许多服务器的Apache日志时,各个日志文件可能比较小,然而Hadoop更合适处理大文件,效率会更高,此时就需要合并分散的文件.如果先将所有文件 ...
- ppt转flash kindeditor上传视频全屏问题
最近要增加页面的ppt显示功能,于是考虑把ppt转成flash,在网上搜到了ispingfree,链接: https://pan.baidu.com/s/1QZzx6qmdsnwzWCuULXzUOw ...
- 6.学习springmvc的文件上传
一.文件上传前提与原理分析 1.文件上传必要前提: 2.文件上传原理分析: 3.需要引入的jar包: 二.传统方式文件上传程序 1.pom.xml <dependency> <gro ...
- 在浏览器端用H5实现图片压缩上传
一.需求的场景: 在我们的需求中需要有一个在手机浏览器端,用户实现上传证件照片的功能,我们第一版上了一个最简版,直接让用户在本地选择图片,然后上传到公司公共的服务器上. 功能实现后我们发现一个问题,公 ...
- antd 批量上传文件逻辑
基本步骤 通过 antd 框架的 Upload 控件,采用手动上传的方式,先选择需要上传的文件(控制文件数量以及大小),再根据所选的文件列表,循环上传,期间通过 Spin 控件提示上传中. 效果展示 ...
- Scrum立会报告+燃尽图(十一月二十六日总第三十四次):上传β阶段展示视频
此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2413 项目地址:https://git.coding.net/zhang ...
随机推荐
- 图片上传是否为空,以及类型的js验证
function check2() { var file = document.getElementsByName("file").value; if(file=="&q ...
- 重新认识REST
大家对REST的认识? 谈到REST大家的第一印象就是通过http协议的GET,POST,DELETE,PUT方法实现对url资源的CRUD(创建.读取.更新和删除)操作.比如http://www.a ...
- unity中绘制战争迷雾
接上一篇中说的游戏,我们已经实现了client.host上的一个物体可见不可见的行为.之后我们可以加入类似检查两个单位之间的距离.或是两个单位之间有无阻挡物来进一步实现游戏机制. 在这篇随笔中我会首先 ...
- python imageai 对象检测、对象识别
imageai库里面提供了目标识别,其实也可以说是目标检测,和现在很多的收集一样就是物体识别.他可以帮你识别出各种各样生活中遇见的事物.比如猫.狗.车.马.人.电脑.收集等等. 感觉imageai有点 ...
- python数据类型-----字符串
今天来总结下python3.4版本字符串的一些操作方法,对这些方法先作一个简单的分类,按照分类来进行总结. Sequence Typessequence类型有六种:strings, byte sequ ...
- background-clip,origin属性
background-clip是新增属性之一,其作用是确定背景的裁剪区域. background-clip语法: background-clip:margin-box | padding-box | ...
- JavaScript的数组详解
#转载请留言联系 创建数组 1.通过new Array()进行创建 var arr1=new Array(); 2.通过中括号进行创建 var arr2=[]; 计算数组的长度 var arr3=[' ...
- RBTree 红黑树
红黑树 一.红黑树概述 红黑树不仅是一个二叉搜索树,并且满足以下规则: 1>每个节点不是红的就是黑的, 2>根结点为黑色, 3>如果节点为红色,其子节点必须为黑色, 4>任一节 ...
- 前段基础HTML
HTML介绍 Web服务本质 import socket sk = socket.socket() sk.bind(("127.0.0.1", 8080)) sk.listen(5 ...
- redis的持久化(RDB&AOF的区别)
RDB 是什么? 在指定的时间间隔内将内存中的数据集快照写入磁盘, 也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里. Redis会单独创建(fork)一个子进程来进行持久化,会 ...