Jenkins下配置findbugs、pmd及checkstyle实现代码自动检测及邮件通知

一、插件介绍
在这里插入图片描述

二、Jenkins 集成 FindBugs、CheckStyle、PMD插件;

1.安装插件

系统管理 -> 管理插件 -> 可选插件-> 搜索 Findbugs,Checkstyle,PMD 并且选中进行安装,安装成功以后重新启动Jenkins;

2.Jenkins任务中配置Findbugs插件;

在构建的时候Goals and options添加参数 compile -D maven.test.skip=true clean compile findbugs:findbugs checkstyle:checkstyle pmd:pmd,使其在代码构建中执行代码检查
在这里插入图片描述

构建设置中选择"Publish FindBugs analysis results",“Publish Checkstyle analysis results”,"Publish PMD analysis results"选择以后会在构建完成生成分析报告;

在这里插入图片描述

每个选项里面有一个高级的功能,这个功能主要是让我们来定义规则,意思在发现什么级别的问题,会使任务变成构建是成功还是失败;如果项目设置了构建成功失败会发送邮件给相关的人员,我建议这里需要设置,这样就可以很好的衡量出来这次构建到底有没有不符合代码检查规范的问题。

在这里插入图片描述

构建结束以后可以再任务详情里面找到FindBugs Warnings,Checkstyle Warnings, PMD Warnings 查看运行的结果

在这里插入图片描述

运行报告

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

当我们多次运行任务我们可以看到每次运行结果的走势图,如果每次构建都不会修改上次问题,这个图会持续走高,我这里构建是为了演示,重复多次构建出现一个平滑的走势图。

在这里插入图片描述

  1. jenkins集成findBugs并生成html报告

项目pom.xml配置

首先在pom中添加插件配置

   <plugin>

            <groupId>org.codehaus.mojo</groupId>

            <artifactId>findbugs-maven-plugin</artifactId>

            <version>3.0.1</version>

            <configuration>

                 <threshold>High</threshold>

                 <effort>Default</effort>

                 <findbugsXmlOutput>true</findbugsXmlOutput>

                 <findbugsXmlWithMessages>true</findbugsXmlWithMessages>

                 <xmlOutput>true</xmlOutput>

                 <formats><format>html</format></formats>

                 <findbugsXmlOutputDirectory>target/site</findbugsXmlOutputDirectory>

            </configuration>

         </plugin>

然后添加reporting配置

    <plugins>

           <plugin>

                  <groupId>org.codehaus.mojo</groupId>

                  <artifactId>findbugs-maven-plugin</artifactId>

                  <version>3.0.1</version>

                  <configuration>

                  <xmlOutput>true</xmlOutput>

                  <!-- Optional directoryto put findbugs xdoc xml report -->

                  <!--<xmlOutputDirectory>target/site</xmlOutputDirectory>-->

                  <findbugsXmlOutput>true</findbugsXmlOutput>

                  <findbugsXmlWithMessages>true</findbugsXmlWithMessages>

                  </configuration>

           </plugin>

    </plugins>

如果不添加reporting配置则无法生成报告,只能在target/site中查看xml文件报告,在jenkins则无法看到。

三.邮件通知

1.首先需要安装Email Extension Template Plugin插件,安装后重启jenkins

  1. 在【系统管理】中选择Editable Email Notification Templates
    在这里插入图片描述

在【系统管理】中选择Editable Email Notification Templates

新建邮件模板

在这里插入图片描述

3.jenkins登录后-系统管理-系统设置打开后定位到下面的位置:系统管理员邮件地址一定要填写

在这里插入图片描述

4.下滑页面定位到extend E-mail Notification:这个是jenkins的一个插件,可以去https://mirrors.tuna.tsinghua.edu.cn/jenkins/plugins/国内清华园的镜像下载

Tips:(1)插件的安装有依赖关系,安装失败时查看依赖的文件,也在https://mirrors.tuna.tsinghua.edu.cn/jenkins/plugins/下载就好

(2)以163邮箱为例,设置smtp server:smtp.163.com和ssl接口465—这个数据可以去自己邮箱查看;username 输入的邮箱地址要和第一步设置的系统用户邮箱地址一致不然会报错501,password是客户授权码不是邮箱的密码。163邮箱授权码获取:https://jingyan.baidu.com/article/adc815139f60c2f723bf7385.html这个文档有接收

在这里插入图片描述

default Recipients:默认收件人的邮箱地址

设置发送邮件的条件Default Triggers(我设置成了always,根据需要自己配置)

在这里插入图片描述

5.下滑页面定位到E-mail Notification,里面的设置要与第二步骤中的数据一致

在这里插入图片描述

6.测试配置是否成功,输入接收的邮件地址,点击test configuration按钮,配置成功显示successfully,点击保存,失败会显示具体的报错信息,

如果配置的password不是授权码 会提示535,与系统用户邮箱不一致会提示501 ,邮箱服务SMTP server 配置错误提示550

在这里插入图片描述

设置好邮件模板以及系统配置完成以后我们需要回到项目中,添加构建后动作,选择邮件通知模板
在这里插入图片描述

项目构建完成以后即可收到代码检测邮件:

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值