-
安装服务器端的sonarqube
下载地址:https://www.cnblogs.com/cxygg/p/18008738 -
客户端有很多种比如SonarScanner CLI,Jenkins extension for SonarQube,SonarScanner for Maven,sonarlint等
-
创建项目后获取token
-
SonarScanner CLI 的使用
-
解压后修改配置文件
sonar-scanner-5.0.1.3006-windows\conf#Configure here general information about the environment, such as SonarQube server connection details for example #No information about specific project should appear here #----- sonarqube服务器地址和项目token sonar.host.url=http://192.168.100.66:9000 sonar.login=sqp_480f5126ff99c9208c21f3a3db21bb7f5e0cc23b #----- Default source code encoding sonar.sourceEncoding=UTF-8
-
把sonar-scanner-5.0.1.3006-windows\bin目录加入到环境变量path
-
在项目代码根目录创建当前项目的配置文件
sonar-project.properties
#项目的唯一标记 sonar.projectKey=TestExample #项目的名字 sonar.projectName=TestExample #项目的版本呢 sonar.projectVersion=1.0 #代码路径,.表示当前路径 sonar.sources=. #编码 sonar.sourceEncoding=UTF-8 #代码语言 sonar.language=java #二进制文件目录,这是要跳过的 sonar.java.binaries=target/classes
-
启动cmd 在 sonar-project.properties所在的目录执行 sonar-scanner开心静态代码扫描
实际上是连接到sonarqube服务器取到扫描规则,然后scanner扫描代码,扫描完成以后上传结果到soanrqube服务器。 -
如果啥都不配置也可以直接命令行指定参数执行
-Dsonar.token 或者-Dsonar.login=账号-Dsonar.password=密码,都能指定授权
#使用token sonar-scanner -Dsonar.projectKey=TestExample -Dsonar.host.url=http://192.168.100.66:9000 -Dsonar.token=sqp_958bf014e49777742cc027d6fddf70cd1941ec39 -Dsonar.sources=. -Dsonar.java.binaries=.\target -Dsonar.java.source=8 -Dsonar.sourceEncoding=UTF-8 #使用账号密码邓丽 sonar-scanner -Dsonar.projectKey=TestExample -Dsonar.host.url=http://192.168.100.66:9000 -Dsonar.login=admin -Dsonar.password=admin123 -Dsonar.sources=. -Dsonar.java.binaries=.\target -Dsonar.java.source=8 -Dsonar.sourceEncoding=UTF-8
-
SonarScanner for Maven 的使用
<settings> <pluginGroups> <pluginGroup>org.sonarsource.scanner.maven</pluginGroup> </pluginGroups> <profiles> <profile> <id>sonar</id> <activation> <activeByDefault>true</activeByDefault> </activation> <properties> <!-- Optional URL to server. Default value is http://localhost:9000 --> <sonar.host.url> http://myserver:9000 </sonar.host.url> </properties> </profile> </profiles> </settings>
clean verify sonar:sonar -Dsonar.projectName=Maven-demo -Dsonar.projectKey=Maven-demo install
-
Jenkins extension for SonarQube 的使用
- 用这个插件原:https://updates.jenkins.io/updates/hudson.plugins.sonar.SonarRunnerInstaller.json
- 安装 SonarQube Scanner插件
- 全局配置设置 SonarQube 的地址,账号密码(或者token)
- 自动构建流水线中配置Execute SonarQube Scanner,设置项目的先关参数
-
sonarlint的使用
这是一个idea插件,安装插件以后,尅开始分析
这种方式不会上传检查结果,只是拉取服务器的规则,方便代码中定义缺陷