jenkins配置sonarqube

jenkins配置sonarqube

下载插件SonarQube Scanner for Jenkins

在系统管理系统设置中选择

SonarQube servers

配置服务器名称、访问URL地址,Sonar5.3版本以后使用token认证

token在sonarqube的账户-安全中添加新token串

在系统管理-全局设置中选择SonarQube Scanner

配置为SonarQube Scanner安装目录

进入项目配置

修改:add pre-build step节点

jenkins配置sonarqube

配置参数

sonar.projectKey=test
sonar.projectName=test
sonar.projectVersion=1.0
sonar.sources=src/main/java
sonar.java.binaries=target/classes
sonar.java.libraries=target/XXXXXXX/*.jar
sonar.language=java
sonar.sourceEncoding=UTF-8
sonar.scm.disabled=true

执行构建

报错:

Error during SonarQube Scanner execution
org.sonar.squidbridge.api.AnalysisException: Please provide compiled classes of your project with sonar.java.binaries property

解决方法:

https://docs.sonarqube.org/display/PLUG/Java+Plugin+and+Bytecode

sonar.java.binaries

Comma-separated paths to directories containing the compiled bytecode files corresponding to your source files.

Since 4.12, analysis will fail with the message :

Please provide compiled classes of your project with sonar.java.binaries property

增加一个配置项:sonar.java.binaries=target/classes

报错:

Error during SonarQube Scanner execution
java.lang.OutOfMemoryError: Java heap space

解决方法

对于比较大的项目,需要增加sonar runner的运存

在JVM Options选项中添加-Xmx512m(或更大内存)

需要跳过某目录下的文件不进行检查:

如排除文件夹 “src/main/java/org/sonar” 中所有的java文件,不包括子文件夹
增加参数sonar.exclusions=src/main/java/org/sonar/*

上一篇:C# 异步操作 async await


下一篇:C语言典型编程3