SonarQube(sonar)是一个开源平台,用于管理源代码的质量。SonarQube不只是一个质量数据报告工具,更是代码质量管理平台。支持java, C#, C/C++, PL/SQL, Cobol, JavaScrip, Groovy 等等二十几种编程语言的代码质量管理与检测。SonarQube可以从以下七个维度检测代码质量,而作为开发人员至少需要处理前5种代码质量问题。
通过以下介绍如何基于Jenkins和SonarQube完成代码质量持续检测。
清单如下,安装方法自行百度谷歌
为了基于Maven方式使用Jenkins,需要再Maven安装目录下的conf/setting.xml文件配置关于sonar的配置的profile
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<!-- 平台登录的账号的用户名 -->
<sonar.login>你的用户名</sonar.login>
<!-- SonarQube平台登录的账号的密码 -->
<sonar.password>你的密码</sonar.password>
<!-- SonarQube访问地址 -->
<sonar.host.url>http://sonar.ibeiliao.net:9000</sonar.host.url>
<!-- 代码分析包括哪些文件需要分析,英文逗号分隔 -->
<sonar.inclusions>**/*.java,**/*.xml</sonar.inclusions>
</properties>
</profile>
并使用 sonar 激活profile
创建一个新任务:
clean org.jacoco:jacoco-maven-plugin:prepare-agent install -Dmaven.test.failure.ignore=true -P dev
sonar:sonar
SonarQube基本架构图
SonarQube 基本架构图
SonarQube与项目持续集成架构图
Jenkins的每日构建默认是使用master,在开发过程中,有时需要在开发者的开发中的分支进行代码检测
方法:
指标
代码整体质量的统计,可以帮助用户理解项目是否已经可以投入生产
默认配置(可以根据项目实际情况重新配置):