解决Jenkins集成SonarQube遇到的报错问题
作者:等风来~~ 发布时间:2023-11-24 08:54:10
Jenkins集成Sonar过程中遇到的报错
1、jenkins中无法添加sonarqube的token凭证
因为添加的凭证类型错误,所以无法添加token,类型应该选择“Secret text”,而不是“username with password”。
2、启动sonarqube报错
#完整报错:
ERROR: [1] bootstrap checks failed. You must address the points described in the following [1] lines before starting Elasticsearch.
bootstrap check failure [1] of [1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
ERROR: Elasticsearch did not exit normally - check the logs at /opt/sonarqube/logs/sonarqube.log
原因:由于 SonarQube 使用嵌入式 Elasticsearch,请确保您的 Docker 主机配置符合Elasticsearch 生产模式要求和文件描述符配置。
解决:在 Linux 上,您可以通过在主机上以 root 身份运行以下命令来设置当前会话的推荐值:(调整系统参数)
sysctl -w vm.max_map_count=262144
sysctl -w fs.file-max=65536
ulimit -n 65536
ulimit -u 4096
3、es程序在sonarqube目录下找不到java(或者没有定义java环境变量)
#完整报错:
2021.07.12 05:59:54 INFO app[][o.s.a.ProcessLauncherImpl] Launch process[[key='es', ipcIndex=1, logFilenamePrefix=es]] from [/opt/sonarqube/elasticsearch]: /opt/sonarqube/elasticsearch/bin/elasticsearch
could not find java in ES_JAVA_HOME at /opt/java/openjdk/bin/java
2021.07.12 05:59:54 WARN app[][o.s.a.p.AbstractManagedProcess] Process exited with exit value [es]: 1
2021.07.12 05:59:54 INFO app[][o.s.a.SchedulerImpl] Waiting for Elasticsearch to be up and running
原因:因为用的是sonarqube:9.0.0-community最新版,可能是sonar版本问题(没弄明白)
解决:换个低版本就不会有这个问题了,比如sonarqube:8.9.1-conmunity版本
4、sonarqube高版本不支持mysql数据库
#完整报错:
Exception in thread "main" org.sonar.process.MessageException: Unsupported JDBC driver provider: mysql原因:sonarqube7.9以上已不再支持mysql数据库
解决:换成postgresql、oracle、sqlserver数据库
5、jenkins项目中配置sonarqube Scanner 报错
#完整报错:
ERROR: Tasks support was removed in SonarQube 7.6.
ERROR:
ERROR: Re-run SonarScanner using the -X switch to enable full debug logging.
WARN: Unable to locate 'report-task.txt' in the workspace. Did the SonarScanner succeed?
ERROR: SonarQube scanner exited with non-zero code: 2解决:删除Execute SonarQube Scanner中Task to run这一栏,什么东西都不要填
#完整报错
org.sonar.java.AnalysisException: Your project contains .java files, please provide compiled classes with sonar.java.binaries property,
or exclude them from the analysis with sonar.exclusions property.原因:sonarqube的sonar-java插件从4.1.2开始,强制要求sonar.java.binaries参数
解决:在Analysis properties配置中添加 ”sonar.java.binaries“ 参数
来源:https://www.cnblogs.com/cfzy/p/15011679.html


猜你喜欢
- 第一种方法这种方法需要配置 hibernate.cfg.xml 的属性 hibernate.hbm2ddl.auto,该属性值的具体说明如下
- #define Testusing System;namespace Wrox.ProCSharp.ParameterTestSample.
- 1. 线程的5种状态从操作系统层面上,任何线程一般都具有五种状态,即创建、就绪、运行、阻塞、终止。(1) 新建状态(NEW)在程序中用构造方
- idea 很强大,但是初次安装默认的有很多设置并不是满足我们开发的需要。以前经常一安装就要捣鼓很久,为此吐血整理初次安装设置一、切换主题(配
- 问题 @Cacheable注解不支持配置过期时间,所有需要通过配置CacheManneg来配置默认的过期时间和针对每个类或者是方法进行缓存
- 目录1、java有8种基本类型,请问byte、int、long、char、float、double、boolean各占多少个字节?2、在 A
- 这篇文章主要介绍了Java List分页功能实现代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的
- 平时开发中经常遇到的很小的问题,这里记录一下。一般在AndroidManifest.xml中添加了android:windowSoftInp
- 有时候我们做Android开发,需要弹一个用户提示,但是有时候设计的提示弹窗是带有图片的,我们每次写一个特别麻烦。所以我特地封装了一个工具类
- 一、前言TreeView这个控件对于我来说是用得比较多的,以前做的小聊天软件(好友列表)、音乐播放器(播放列表)、类库展示器(树形类结构)等
- 本人没有接触android开发,由于想学习一下,所以自学,接下来是我学习路线,希望我走过的路能给你提供帮助。 下载首先我们需要下载 Andr
- AssertJ是我目前见过的最强大的断言api,没有之一。官网传送门为什么使用assertJ?1、流式断言,代码即用例,直观易懂。举个例子:
- 前言:已经有一个月没写点什么了,感觉心里空落落的。今天再来篇干货,想要学习Webapi的园友们速速动起来,跟着博主一起来学习吧。之前分享过一
- SpringBoot集成Freemarker主要特征:静态页面,无接 * 互数据实时性不高且体量小的网站可采用生成静态html的形式数据提前渲
- (1)编写接口Animal (Animal.java)public interface Animal{ public abstr
- 最近总是有人问如何通过Silverlight上传图片并保存的后台服务器?众所周知,Silverlight是客户端程序,不能很好与服务器进行“
- C#语言有很多值得学习的地方,这里我们主要介绍C#使用if语句。如果想根据一个布尔表达式的结果选择执行两个不同的代码块,就可以C#使用if语
- 持久化技术简介数据持久化就是指将那些内存中的瞬时数据保存到存储设备中,保证即使在手机或计算机关机的情况下,这些数据也不会丢失。保存在内存中的
- View绘制的三大流程,指的是measure(测量)、layout(布局)、draw(绘制) measure负责确定View的测量宽/高,也
- package TestList;import java.util.ArrayList;import java.util.Iterator;