原文:Sonar静态扫描的使用 - 简书 (jianshu.com)
SonarQube是一个用于代码质量管理的开源平台,用于管理多源代码的质量,目前支持Java、JS、PHP、Python、C等25+语言。
通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具,列如findbugs、Jenkins。通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理。
简单来说,SonarQube是一个质量平台,用于收集质量数据(代码扫描结果、测试覆盖率等),并对数据进行各维度的统计分析。
而代码分析(也就是得到质量数据的过程),需要用到Sonar的客户端(或插件)。下面就简单介绍一下sonar客户端(插件)的使用。
以下主要介绍前两种的用法。
Sonar-Scanner目录/bin路径加入环境变量。Sonar-Scanner目录/conf/sonar-runner.properties文件,如下所示,填写SonarQube的相关信息(安照实际情况填写url和login信息):sonar.host.url=http://127.0.0.0:8090
#----- MySQL
sonar.jdbc.url=jdbc:mysql://127.0.0.0:3306/sonar?useUnicode=true&characterEncoding=utf8
#----- Default source code encoding
sonar.sourceEncoding=UTF-8
#----- Security (when sonar.forceAuthentication is set to true )
sonar.login=admin
sonar.password=admin
sonar-project.properties,文件中填入以下必要信息:# 需要扫描的源代码目录
sonar.sources=src
# 项目的Key,可任意,必须唯一
sonar.projectKey=org.sonarqube.demo
# 项目在SonarQube上显示的名称
sonar.projectName=php demo
# 项目版本
sonar.projectVersion=1.0
# 扫描的语言
sonar.language=php
备注1:还可以填写其它参数,详细见官方文档。
备注2:在Jenkins中,可以通过sonar插件配置以上数据,可免去在项目中配置该文件。
sonar-runner,windows下执行sonar-runner.bat命令即可。扫描成功后,数据会自动上传到SonarQube。
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.jdbc.url>
jdbc:mysql://127.0.0.1:3306/sonar?useUnicode=true&characterEncoding=utf8
</sonar.jdbc.url>
<sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver>
<sonar.host.url>http://127.0.0.1:8090</sonar.host.url>
<sonar.login>admin</sonar.login>
<sonar.password>admin</sonar.password>
</properties>
</profile>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>2.6</version>
</plugin>
mvn sonar:sonar即可。</article>
4人点赞
Jenkins
作者:sheenaghWS
链接:https://www.jianshu.com/p/582240fa53fa
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。