Jenkins集成SonarQube遇到的报错

 


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
posted @   等风来~~  阅读(2567)  评论(1编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示