SonarQube4.4+Jenkins进行代码检查实例之二

本文介绍如何在SonarQube4.4中结合Jenkins进行Findbugs代码检查。通过下载Findbugs插件,配置SonarQube和Jenkins,设置Maven项目,并在Post Steps中执行SonarQube Runner,实现对Java 8字节码的检查。最终,SonarQube会显示新发现的issue和Technical Debt指标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在 《SonarQube4.4+Jenkins进行代码检查实例之一》 中介绍了不编译只检查的方式。

但是有些代码检查需要使用字节码,比如Findbugs的检查依赖于字节码,实例一中只提取源代码,就不能进行Findbugs的检查。

要进行Findbugs检查就需要编译。以下实例操作来演示如何搭建


1,首先当然是要下载最新的Findbugs    http://docs.codehaus.org/display/SONAR/FindBugs+Plugin   ,当前最新版是V3.0,  supports analysis of Java 8 bytecode but requires Java 1.7 to run (see Compatibility section)。  下载后将相应Jar包存放到 \sonarqube-4.4\extensions\plugins 下, 其中\sonarqube-4.4是SonarQube的安装目录,然后重启SonarQube

1b, 也可以在SonarQube的update center中下载,下载后按提示重启SonarQube即可。

2,以admin登录到Sonar,将缺省的Quality Profiles改为 Sonar way with Findbugs

3,在Jenkins中配置项目,笔者以Maven3为例,选择 maven2/3项目 

4,按Maven项目正常配置,在Goals and options留空,采用缺省

5,在Post Steps中加入 Windows Batch command, 命令为: SonarQube Runner V2.4安装位置\bin\sonar-runner.bat

6,配置项目,要告知SonarQube编译结果在哪里,并且加入更新到SVN下,如下:

# required metadata 
sonar.projectKey=Keqiang:CodeKatabySonarRunner
sonar.projectName=CodeKatabySonarRunner
sonar.projectVersion=2.0.0  
# path to source directories (required) 
sonar.sources=src/main/java
# path to project binaries (optional), for example directory of Java bytecode 
sonar.binaries=target/classes

7,在Jenkins中立即构建 此Job

8,访问 http://localhost:9000  来看看SonarQube的结果,可以看到根据Findbugs的规则新发现的issue

说明1:Sonar way with Findbugs 是SonarQube缺省的选择,一共497条规则。SonarQube提供了方便的界面来修改。

说明2:SonarQube就发现的Issue设立了总指标Technical Debt,以工作量来表达需要多少时间修复这些issue。


小结:以上配置是简单的。说白了,只需交待编译结果在哪里就可以了。

以上两个实例,希望读者能够了解搭建SonarQube是多么容易。

Jenkins并不是必须的,利用Sonar-Runner完全可以达到相同相关。加入Jenkins支持之后,就能根据Svn操作来自动启动。




评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值