1.Jenkins集成sonarqube自动扫描

1.1.安装sonarqube scanner插件

这里失败是提示sonar插件的版本太低了,需要安装高版本的

Jenkins集成sonarqube在上线前进行代码自动扫描(九)_maven项目

安装成功

Jenkins集成sonarqube在上线前进行代码自动扫描(九)_代码质量_02

1.2.添加sonarqube服务地址

如果将来换了sonarqube地址,则需要把项目删除重建,否则会识别不到

点击配置—configure system

Jenkins集成sonarqube在上线前进行代码自动扫描(九)_html_03

找到sonarqube配置项,填写name、url、token,点击增加token点不动,需要保存后再进来设置

Jenkins集成sonarqube在上线前进行代码自动扫描(九)_maven项目_04

添加token需要再次进入,点击添加—jenkins
Jenkins集成sonarqube在上线前进行代码自动扫描(九)_代码质量_05

选择secret text类型,在secret填写上token

Jenkins集成sonarqube在上线前进行代码自动扫描(九)_全局变量_06

与刚刚添加的token进行关联

Jenkins集成sonarqube在上线前进行代码自动扫描(九)_html_07

1.3.添加sonarqube scanner地址

配置—Global Tool Configuration—sonarqube

Jenkins集成sonarqube在上线前进行代码自动扫描(九)_java_08

找到sonarqube scanner,取消安装对勾

Jenkins集成sonarqube在上线前进行代码自动扫描(九)_maven项目_09

填写sonarqube scanner路径
Jenkins集成sonarqube在上线前进行代码自动扫描(九)_java_10

2.改造项目集成sonarqube

2.1.freestyle项目集成

2.1.1.改造项目

点击项目配置—>构建—>增加构建步骤---->execute sonarqube scanner

把这个构建项拖到执行脚本上面,先进行代码质量分析再部署,参数如下,要写到analysis properties中

sonar.projectName=${JOB_NAME}		#任务名称,JOB_NAME是全局变量,表示项目名称
sonar.projectKey=html			#项目的唯一表示,html代码
sonar.sources=.				#代码 路径

Jenkins集成sonarqube在上线前进行代码自动扫描(九)_java_11

2.2.立即构建

点击保存后会多出一个sonarqube的图标,点击图标会跳转至sonarqube,不构建是不会跳转的
Jenkins集成sonarqube在上线前进行代码自动扫描(九)_全局变量_12

点击立即构建,构建完成也会多出一个sonarqube的图标

Jenkins集成sonarqube在上线前进行代码自动扫描(九)_全局变量_13

构建完成后,点击刚刚的sonarqube图标即可跳转至sonarqube查看分析结果

Jenkins集成sonarqube在上线前进行代码自动扫描(九)_全局变量_14

2.2.maven项目集成

2.2.1.改造项目

点击项目配置—>pre steps—>add pre-build step—>execute sonarqube scanner

把这个构建项拖到执行脚本上面,先进行代码质量分析再部署,参数如下,要写到analysis properties中

sonar.projectName=${JOB_NAME}		#任务名称,JOB_NAME是全局变量,表示项目名称
sonar.projectKey=java			#项目的唯一表示,html代码
sonar.sources=.				#代码 路径

Jenkins集成sonarqube在上线前进行代码自动扫描(九)_java_15

保存后会多一个sonarqube图标,不构建一次就不会生成跳转连接
Jenkins集成sonarqube在上线前进行代码自动扫描(九)_html_16

2.2.2.立即构建

立即构建会生成soanrqube的图标

Jenkins集成sonarqube在上线前进行代码自动扫描(九)_java_17

点击刚刚的sonarqube图标跳转至sonarqube服务器看分析结果
Jenkins集成sonarqube在上线前进行代码自动扫描(九)_html_18