CheckStyle是SourceForge下的一个项目,提供了一个帮助JAVA开发人员遵守某些编码规范的工具,接下来给大家讲下如何在jenkins(我是在tomcat下安装的jenkins)集成checkstyle,构建项目并发送邮件。
一、linux环境,安装jdk ,并配置环境变量,自行百度
java -version
二、安装tomcat
1、将下载的tomcat压缩包解压
tar -zxvf apache-tomcat-9.0.21.tar.gz
2、启动tomcat
进入到tomcat安装目录的/bin目录下,执行./startup.sh 进行启动
3、验证tomcat是否启动
打开浏览器访问:localhost:8080,页面显示的tomcat正常信息,表示配置成功
三、安装jenkins
1、将jenkins.war复制到tomcat的webapps
cd /usr/tomcat/apache-tomcat-9.0.21/webapps 然后jenkins.war放在这里
2、配置环境变量
vi /etc/profile
export JENKINS_HOME=/usr/tomcat/apache-tomcat-9.0.21/webapps/
3、保存退出,使设置生效
source /etc/profile
4、启动tomcat
cd /usr/tomcat/apache-tomcat-9.0.21/bin
./startup.sh
5、访问jenkins
浏览器打开http://localhost:8080/jenkins/,即进入jenkins页面
登录密码存在于:/usr/tomcat/apache-tomcat-9.0.21/webapps/secrets/initialAdminPassword
安装完成,页面展示如下:
四、在Jenkins中集成CheckStyle
1、下载CheckStyle插件
Jenkins中CheckStyle插件的作用是图形化的展示CheckStyle输出的结果,可以在Jenkins > 系统管理 > 插件管理 > 可选插件中搜索并安装CheckStyle插件:
2、下载并安装 Checkstyle 工具
可从以下地址(https://github.com/checkstyle/checkstyle/releases/)下载CheckStyle一体化Jar包,放在Jenkins所在的服务器上,如/usr/checkstyle 目录
3、CheckStyle的代码规范配置文件
将CheckStyle的配置文件放在要检查的项目里,也可以放在Jenkins所在服务器上,通过绝对路径引用文件,我将此文件放在了Jenkins所在服务器的/usr/checkstyle目录下
代码规范的配置文件可以自定义,也可以下载公开的代码风格定义文件,如 Sun 代码规范 sun_checks.xml 和 Google Java 代码规范 google_checks.xml
4、配置Jenkins项目调用CheckStyle并生成报告
jenkins新加一个job,要扫描的源码在git上,地址如下:
增加一个构建步骤“Execute Shell”
脚本如下:
java -cp /usr/checkstyle/checkstyle-8.21-all.jar com.puppycrawl.tools.checkstyle.Main -c /usr/checkstyle/google_checks.xml -f xml -o checkstyle-result.xml /usr/tomcat/apache-tomcat-9.0.21/webapps/workspace/zhanye_android/
java -cp :指定类运行所依赖其他类的路径,通常是类库、jar 包之类,需要全路径到 jar 包;
Checkstyle 工具的 -c 参数用于指定代码风格的定义文件,-f 参数用于指定用于指定输出检查报告文加的格式,-o 参数用于指定输出报告文件的文件名,同时需要为 Checkstyle 指定项目的 Java 源代码路径。上面的命令中 Checkstyle 将输出文件名为 checkstyle-result.xml 格式为 xml 的检查报告。
在“构建后操作步骤中”新增一个“Publish Checkstyle analysis results”,在其中配置checkstyle-result.xml以表示收集前述步骤产生的结果文件。
在Checkstyle results框中输入 Checkstyle 检查结果文件的路径,这个结果文件需要我们在构建期间调用 Checkstyle 工具生成。点击左下角的 [保存]按钮保存退出配置。
Jenkins 在工程构建结束之后,扫描 Checkstyle 的检查报告,并展示出来,如图:
5、将报告以邮件形式发送给指定用户
5.1、系统管理->系统设置,Jenkins 自带邮件插件(Mailer Plugin)的功能很弱且无法自定制,需要安装插件Email Extension Template
5.2、全局统一设置,系统管理->系统设置如下:
5.2.1设置管理员邮箱:
邮件模板
5.2.2设置邮件触发时机
5.2.3设置发件人帐号
5.3、项目设置中启用邮件,选择项目,点击【配置】,拉到最后面,有一个增加构建后操作步骤,选择Edittable Email Notification。
Email Extension Plugin设置如下:
5.4验证构建报告邮件
手工触发工程,点击“立即构建”,构建成功后发送邮件,邮件内容如下: