Ant-Model:CheckStyle

本文介绍如何使用Apache Ant配合CheckStyle进行代码规范检查,并通过邮件发送检查报告。具体包括配置属性文件、定义构建任务及邮件发送等内容。

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


1、设置 user.properties
  1. # 项目名称
  2. project.name=WebService_Restful
  3. # 项目所在的路径
  4. project.dir=D://workspaces//webservice//Restful
  5. # 源文件所在的路径
  6. project.src.dir=${project.dir}//src//main//java
2、build.xml

  1. <project name="checkstyle" default="checkstyle" basedir=".">
  2.     <!-- 导入属性文件 -->
  3.     <property file="user.properties" />
  4.     <!-- - - - - - - - - - - - - - - - - - 
  5.           target: init                      
  6.          - - - - - - - - - - - - - - - - - -->
  7.     <target name="init">
  8.         <tstamp />
  9.         <!-- 报告的生成位置 -->
  10.         <property name="project.checkstyle.report.dir" value="${project.dir}/report" />
  11.         <!-- 检测结果的文件名 -->
  12.         <property name="project.check.result.name" value="${project.name}-checkstyle-result-${DSTAMP}.xml" />
  13.         <!-- 检测报告的文件名 -->
  14.         <property name="project.check.report.name" value="${project.name}-checkstyle-report-${DSTAMP}.html" />
  15.         <!-- 所使用的配置文件 -->
  16.         <property name="checkstyle.config" value="${basedir}/sunrising_checks.xml" />
  17.         <!-- 报告风格 -->
  18.         <property name="checkstyle.report.style" value="${basedir}/contrib/checkstyle-noframes.xsl" />
  19.         <!-- 检测结果 -->
  20.         <property name="checkstyle.result" value="${project.checkstyle.report.dir}/${project.check.result.name}" />
  21.         <!-- 检测报告 -->
  22.         <property name="checkstyle.report" value="${project.checkstyle.report.dir}/${project.check.report.name}" />
  23.         <!-- 新建报告所在的文件夹 -->
  24.         <mkdir dir="${project.checkstyle.report.dir}" />
  25.     </target>
  26.     <taskdef resource="checkstyletask.properties" classpath="${basedir}/lib/checkstyle-all-5.0-beta01.jar" />
  27.     <!-- - - - - - - - - - - - - - - - - - 
  28.           target: checkstyle                      
  29.          - - - - - - - - - - - - - - - - - -->
  30.     <target name="checkstyle" depends="init" description="Check java code and report ">
  31.         <echo>"${checkstyle.config}"</echo>
  32.         <checkstyle config="${checkstyle.config}" failOnViolation="false" failureProperty="checkstyle.failure">
  33.             <formatter type="xml" tofile="${checkstyle.result}" />
  34.             <fileset dir="${project.src.dir}" includes="**/*.java" />
  35.         </checkstyle>
  36.         <xslt in="${checkstyle.result}" out="${checkstyle.report}" style="${checkstyle.report.style}" />
  37.     </target>
  38.     <!-- - - - - - - - - - - - - - - - - - 
  39.           target: mailTarget                      
  40.          - - - - - - - - - - - - - - - - - -->
  41.     <target name="mailCheckStyleReport">
  42.         <mail mailhost="mail.mydomain.cn" mailport="25" subject="Checkstyle violation(s) in project ${ant.project.name}" user="myname@mydomain.cn" password="mypass" files="myattchment">
  43.             <from address="ci@mydomain.cn" />
  44.             <replyto address="cimanager@mydomain.cn" />
  45.             <to address="myname@mydomain.cn" />
  46.             <message>TEST MAIL FROM CheckStyle</message>
  47.         </mail>
  48.     </target>
  49. </project>

3、注意

A)CheckStyle的jar位于当前basedir目录的lib中;
B)javax.activation.jar和mail.jar放到apache-ant-1.7.0/lib目录下,否则mailTarget不可用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值