建设一个本地网站三门峡做网站优化
Jenkins集成sonarqube
- 1.jenkins集成sonarqube
 - 2.jenkins以maven的方式集成sonarqube scanner
 - 报错1
 - 报错2
 
1.jenkins集成sonarqube
1.在jenkins插件管理中安装sonarqube scanner
 
2.jenkins要知道sonarqube服务端是谁,需要配置(系统管理–系统配置–sonarqube–添加一个即可)

3.添加一个token,此处的token就是之前在sonarqube上生成的令牌
 

4.jenkins服务器上需要先安装sonar-scanner,然后在全局工具管理中配制sonarqube scanner
 
5.Jenkins在项目中引用sonarqube scanner
 下面以基于tags的方式发布为例,在项目中引入sonarqube
sonar.projectName=${JOB_NAME} 	#项目在sonarqube上的显示名称
sonar.projectKey=${JOB_NAME} 	#项目的唯一标识,不能重复
sonar.sources=. 	#扫描哪个项目的源码
 

6.然后就会看到集成的sonarqube

7.然后我们重新提交一次代码,再次进行构建

8.提示成功

9.可以点击链接,然后查看扫描的结果

 
2.jenkins以maven的方式集成sonarqube scanner
1.jenkins所依赖的jdk版本与sonarqube中所使用的的jdk版本,改成一致的

2.通过调用maven的方式

clean
verify
sonar:sonar
-Dsonar.host.url=http://192.168xx.xxx:9000
-Dsonar.login=#填写自行生成的token
 

3.开始构建
 
4.构建成功
 
5.查看分析结果
报错1
如果在构建过程中遇到以下报错

1.检查token是否正确,可以尝试重新添加一次
 
 
2.检查Jenkins全局工具管理中配制sonarqube scanner的路径是否正确

报错2
如果在构建过程中遇到以下报错
[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.9.1.2184:sonar (default-cli) on project hello-world-war: 
Execution default-cli of goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.9.1.2184:sonar failed: 
An API incompatibility was encountered while executing org.sonarsource.scanner.maven:sonar-maven-plugin:3.9.1.2184:sonar: 
java.lang.UnsupportedClassVersionError: org/sonar/batch/bootstrapper/EnvironmentInformation has been compiled by a morerecent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
[ERROR] -----------------------------------------------------
[ERROR] realm =    plugin>org.codehaus.mojo:sonar-maven-plugin:3.9.1.2184
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy 
一般原因是jdk版本的问题,你的jenkins所依赖的jdk版本与sonarqube使用的jdk版本冲突造成的,改成一致的版本就好了
