SonarQube 7.5
数据库MYSQL 5.7
sonar-scanner-3.2.0.1227-windows(好像也可以不用)
一、下载安装
1. sonarqube:
https://www.sonarqube.org/downloads/
注:
(1)高版本(如:sonarqube-7.9.1需要jdk11,这里我使用了7.5版本; sonar 7.9版本不支持mysql数据库!!)
(2)下载社区版(community),developer等版本需要license
2. 中文插件
https://github.com/SonarQubeCommunity/sonar-l10n-zh/releases/tag/sonar-l10n-zh-plugin-1.25
sonar-l10n-zh-plugin-1.25.jar放置到 sonarqube-7.5\extensions\plugins目录下
3. sonar-scanner下载
https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner
二、配置
1. sonar.properties配置(\sonarqube-community-7.5\conf\sonar.properties)
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.jdbc.username=root
sonar.jdbc.password=root
sonar.sourceEncoding=UTF-8
2. sonar-scanner.properties配置(sonar-scanner-4.0.0.1744-windows\conf\sonar-scanner.properties)
sonar.host.url=http://localhost:9000
sonar.sourceEncoding=UTF-8
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.jdbc.username=root
sonar.jdbc.password=root
sonar.sourceEncoding=UTF-8
3. Maven的settings.xml配置
<pluginGroups>
<pluginGroup>org.sonarsource.scanner.maven</pluginGroup>
</pluginGroups>
<profiles>
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.host.url>http://localhost:9000</sonar.host.url>
</properties>
</profile>
</profiles>
三、数据配置
创建一个数据库,名字为sonar(或其他数据库名字,和上面配置一致即可),注意上面的mysql用户名需要具有创建表的权限,初始化时,会生成很多sonar扫描所需要的数据库表
四、分析
1. 双击 sonarqube-community-7.5\bin\windows-x86-64\StartSonar.bat 启动sonar,初次使用,需要等待一会儿,因为会去创建数据库表
2. 启动完成后,打开浏览器,输入:http://localhost:9000,admin / admin账户密码登录
3. 新建一个分析项目,输入项目名称,点击Generate -> Continue,此时第二步会生成一段命令,将这个命令到项目(pom.xml)所在路径下执行,执行完成后,到页面上就能看到分析结果了。
示例命令:
mvn sonar:sonar -Dsonar.host.url=http://localhost:9000 -Dsonar.login=1fb8da8f1102c1ccbbaabd5aa138f4ac98d3147e
附:
sample项目
https://github.com/SonarSource/sonar-scanning-examples
============================================================================================
sonarqube-8.2.0.32929 版本配置
1. 修改 sonarqube-8.2.0.32929\conf\wrapper.conf 配置文件
配置jdk11版本的java.exe地址
wrapper.java.command=C:\Coding\Java\jdk-11.0.4\bin\java.exe
2. 常见错误: Please provide compiled classes of your project with sonar.java.binaries property
需要在扫描代码的命令行后面增加配置,如下:
# 增加-Dsonar.java.binaries这段配置
mvn sonar:sonar -Dsonar.host.url=http://localhost:9000 -Dsonar.login=1fb8da8f1102c1ccbbaabd5aa138f4ac98d3147e -Dsonar.java.binaries=target/
3. 如果你仅仅是本地测试使用,如模拟线上先对本地代码进行扫描,可用使用默认的内存数据库,无需配置数据源等,直接启动就可以。