编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

代码质量管理平台SonarQube系列二:与maven集成检测

wxchong 2024-09-28 02:21:31 开源技术 206 ℃ 0 评论

使用 maven 可以快速体验 SonarQube 平台的功能,按以下步骤:

一,配置 maven 的 settings.xml文件,在<profiles></profiles>中添加一项配置如下:

<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.jdbc.url>jdbc:mysql://192.168.3.201:3306/sonar</sonar.jdbc.url>
<sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver>
<sonar.jdbc.username>root</sonar.jdbc.username>
<sonar.jdbc.password>123456</sonar.jdbc.password>
<!-- SERVER ON A REMOTE HOST -->
<sonar.host.url>http://192.168.3.201:9000</sonar.host.url>
</properties>
</profile>

小技巧:如果你不知道 settings.xml 在那里或不确定 maven的版本,可以直接运行 mvn --version 获取maven 的配置信息,如下图:

二,在maven编译时,后面加上 sonar:sonar 参数就OK了。比如:

mvn clean package -Dmaven.test.skip=true sonar:sonar

以上执行可能会有 svn 的认证错误,请参考:

sonar-scanner扫描代码出错 SonarQube svn: E170001

问题报错:


原因分析:

关键字段:svn: E170001: Authentication required for '<svn://192.168.1.95:3690> 6f205048-4e01-0010-937d-7723a8b4cf5f'

问题原因:

sonar-runner发现了.svn文件,于是启动了自己的SVN插件,去访问SVN,但是又没有对应SVN路径的授权所以就报错。

问题解决:

1.打开sonarqube的控制台,使用admin登录后 ,在配置->SCM->菜单中,将Disabled the SCM Sensor设置为true,

2.在svn页面,设置svn的用户名和密码。

三,在SonarQube 平台上查看代码分析结果:

四,在 jenkins 中上述方法,可以根据提交的代码自动检测代码质量。

与 jenkins 有其它的方式可以集成使用,后续再展开。


最好的工具,还要落在实处,每天去重复执行。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表