代码质量管理平台SonarQube的安装、配置与使用
准备说明:
· 下载JDK,对JDK进行安装,这里不详细介绍;
· 下载sonarQube,下载地址:http://www.sonarqube.org/downloads/,最新版为7.1,如下:
· 下载客户端,下载地址:https://sonarsource.bintray.com/Distribution/sonar-scanner-cli/,最新版为2.8,如下:
· 汉化包下载,下载地址:https://github.com/SonarQubeCommunity/sonar-l10n-zh,根据已下载的sonarQube版本找到对应的汉化包进行下载,包名:sonar-l10n-zh-plugin-1.21.jar,如下:
· 安装mysql数据库,这里不详细介绍;
安装说明:
· 对下载的sonarQube压缩包进行解压,把汉化包(sonar-l10n-zh-plugin-1.21.jar)拷贝到D:\sonarqube-7.1\extensions\plugins目录下,如图:
· 打开bin目录,再根据操作系统位数打开相应的目录,本机是64位操作系统,再双击StartSonar.bat,如下:
启动成功如下:
在浏览器中输入:http://localhost:9000,出现以下界面,说明安装并启动成功:
配置说明:
· 在mysql中新建数据库,数据库取名随意取,本例取名sonar,sonarQube支持MySQL、Oracle、PostgreSQL、SQLServer数据,根据自己情况选择。
· 打开sonarQube配置文件:D:\sonarqube-7.1\sonar.properties;
· 修改配置信息,如下:
· 重启sonarQube服务,再访问http://localhost:9000,第一次访问有点慢,因为连接数据库初始化信息,完成后可以看到数据库中创建的表,如下:
· 登陆,输入sonarQube登陆用户名、密码:
使用说明:
· 打开D:\sonar-scanner-2.8\conf\sonar-runner.properties文件
· 修改客户端配置信息,如下:
· 配置系统环境变量, 如下:
新增SONAR_RUNNER_HOME变量,值为客户端所在目录地址;
打开path,在后面增加%SONAR_RUNNER_HOME%\bin;
· 重启电脑,重启完之后在cmd窗口,输入sonar-runner -version,出现以下信息,则表示环境变量设置成功。
· 打开需要进行代码分析的项目根目录,新建sonar-project.properties文件;
· 在sonar-project.properties文件中输入以下信息并保存;
# must be unique in a given SonarQube instance
#格式 sonar.projectKey=my:工程名
sonar.projectKey=my:portal
# this is the name displayed in the SonarQube UI
# sonar.projectName=工程名
sonar.projectName=portal
sonar.projectVersion=1.0
# Path is relative to the sonar-project.propertiesfile. Replace "\" by "/" on Windows.
# Since SonarQube 4.2, this property is optional ifsonar.modules is set.
# If not set, SonarQube starts looking for source codefrom the directory containing
# the sonar-project.properties file.
#java文件所在目录
sonar.sources=D:/work_idea/portal/portal-boot/src
# Encoding of the source code. Default is defaultsystem encoding
sonar.sourceEncoding=UTF-8
# sonar.java.binaries=java classes目录
sonar.java.binaries=D:/work_idea/portal/portal-boot/build/classes
· 在cmd进入项目所在的根目录,输入命令:sonar-runner,对项目进行分析,分析成功后会出现下图
· 打开http://localhost:9000/,在主页就可以查看分析项目的概要图,查看分析结果;