最近要测试一下系统代码情况,下载了最新版的sonarqube6.2,下面是具体步骤:
1.确保windows系统已安装jdk8版本,这是sonarqube6.2的基本需求,安装完成后配置java环境变量,具体可以百度
2.去mysql官网下载mysql5.6及以上版本,这也是sonarqube6.2的需求
3.去sonarqube官网下载sonarqube6.2,下载解压即可,做一下配置:
代码语言:javascript复制# User credentials.
# 配置数据库连接账号及密码
sonar.jdbc.username=admin
sonar.jdbc.password=123456
#----- MySQL 5.6 or greater
# Only InnoDB storage engine is supported (not myISAM).
# Only the bundled driver is supported. It can not be changed.
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonarqube?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
需要注意的是sonarqube6.2只支持InnoDB引擎,所以创建的sonarqube库必须是InnoDB引擎
4.安装sonar-scanner,具体可以参考:参考链接
5.经过上面步骤后,sonarqube运行的基本要素都已完毕,下面进入项目配置环节
6.在项目的根目录创建文件sonar-project.properties,并黏贴下面内容:
代码语言:javascript复制sonar.projectKey=sonarCoverage
sonar.projectName=sonarCoverage
sonar.projectVersion=1.3
sonar.sources=src/main/java
sonar.tests=src/test/java
sonar.java.binaries=target/classes,target/test-classes
sonar.java.test.binaries=target/test-classes
sonar.java.source=1.7
sonar.language=java
sonar.java.coveragePlugin=jacoco
#告诉sonarqube去哪个目录读取单元测试结果
sonar.junit.reportsPath=target/surefire-reports
#Tells SonarQube where the unit tests code coverage report is
sonar.jacoco.reportPath=jacoco/jacoco-ut.exec
#Tells SonarQube where the integration tests code coverage report is
sonar.jacoco.itReportPath=jacoco/jacoco-it.exec
# Encoding of the source files
sonar.sourceEncoding=UTF-8
7.如果你所需要检测的项目是maven项目,执行下面两条命令即可:
(1)mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent install -Dmaven.test.failure.ignore=true (2)mvn sonar:sonar
8.如果是在本地搭建的sonarqube服务器,在浏览器输入http://localhost:9000,输入用户名:sonar,密码:sonar登录即可查看结果: