`
sxw7362693
  • 浏览: 60681 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

常用的Ant模板(BUILD.XML)

阅读更多

现在项目使用ant来管理,整理了一个常用的Ant模板文件,包括:编译、运行Junit测试用例、 CheckStlye、从Vss取版本、javadoc等。希望有用。

<?xml version="1.0" encoding="gb2312"?>
<!--
本模板文件提供了以下功能:
1.编译java代码;
2. 产生java代码对应的javaDoc;
3.检查java代码的编码规范;
4.编译并运行java代码对应的junit测试代码
5. 从Vss中获取程序
-->
<project name="Fog Project" default="all" basedir=".">

<!-- 环境变量 -->
<property environment="env"/>
<!-- 设置junit报告的xsl文件目录 -->
<property name="junit.styleDir" value="${env.ANT_HOME}/etc"/>

<!-- 源代码目录 -->
<property name="src.code" value="src"/>
<!-- 源代码对应的junit目录 -->
<property name="src.junit" value="junit"/>
<!-- 引用包所在目录 -->
<property name="lib.dir" value="lib"/>
<!-- 目标jar名称 -->
<property name="lib.jar" value="fog.jar"/>

<!-- checkstyle configuration -->
<property name="checkstyle.config" value="${lib.dir}/checkstyle33.xml"/>
<!-- 设置checkstyle的xsl文件 -->
<property name="checkstyle.xsl" value="${lib.dir}/checkstyle-frames.xsl"/>
<taskdef resource="checkstyletask.properties"
classpath="${lib.dir}/checkstyle-all-3.3.jar"/>

<!-- VSS配置 -->
<property name="vss.ssdir" value="D:\Program Files\vss\win32\"/>
<property name="vss.svrdir" value="Z:"/>
<property name="vss.path" value="/fog/implement"/>

<!-- 输出文档 -->
<property name="doc.dir" value="doc"/>
<property name="doc.api" value="${doc.dir}/api"/>
<!-- junit report -->
<property name="doc.junitReport" value="${doc.dir}/junitReport"/>
<!-- checkstyle report -->
<property name="doc.checkstyleReport" value="${doc.dir}/checkstyleReport"/>

<!-- 与开发包结构相同 -->
<property name="javadoc.package" value="fog.*"/>

<!-- 输出二进制文件 -->
<property name="dist.root" value="projDist"/>
<property name="dist.proj" value="${dist.root}/proj"/>
<property name="dist.classes" value="${dist.proj}/classes"/>
<property name="dist.lib" value="${dist.proj}/lib"/>
<property name="dist.junit" value="${dist.root}/junit"/>

<!-- classpath -->
<path id="classpath">
<fileset dir="${lib.dir}">
<include name="**/*.jar"/>
</fileset>

<fileset dir="web/WEB-INF/lib">
<include name="**/*.jar"/>
</fileset>

<fileset dir="${dist.lib}">
<include name="**/*.jar"/>
</fileset>

<fileset dir="junit_lib">
<include name="**/*.jar"/>
</fileset>
</path>

<target name="init">
<mkdir dir="${doc.dir}"/>
<mkdir dir="${dist.root}"/>
<mkdir dir="${dist.proj}"/>
<mkdir dir="${dist.lib}"/>
<tstamp/>
<echo message="${TSTAMP}"></echo>
</target>

<target name="all" depends="compilesrc, javadoc, checkstyle"/>

<!-- 编译源文件 -->
<target name="compilesrc" depends="init">
<mkdir dir="${dist.classes}"/>

<javac destdir="${dist.classes}" deprecation="on">
<src path="${src.code}"/>
<classpath refid="classpath"/>
</javac>

<jar jarfile="${dist.lib}/${lib.jar}" basedir="${dist.classes}">
<include name="**/*.class"/>
</jar>
</target>

<!-- 产生javadoc -->
<target name="javadoc" depends="init">
<mkdir dir="${doc.api}"/>

<javadoc packagenames="${javadoc.package}" sourcepath="${src.code}"
private="yes" defaultexcludes="yes" destdir="${doc.dir}/api">
<classpath refid="classpath"/>
</javadoc>
</target>

<!-- 编译Junit文件 -->
<target name="compilejunit" depends="compilesrc">
<mkdir dir="${dist.junit}"/>

<javac destdir="${dist.junit}" deprecation="on">
<src path="${src.junit}"/>
<classpath refid="classpath"/>
</javac>
</target>

<!-- 运行checkstyle检查代码规范 -->
<target name="checkstyle" depends="init">
<mkdir dir="${doc.checkstyleReport}"/>

<checkstyle config="${checkstyle.config}">
<fileset dir="${src.code}" includes="**/*.java"/>
<formatter type="plain"/>
<formatter type="xml" toFile="${doc.checkstyleReport}/checkstyle_report.xml"/>
</checkstyle>

<style in="${doc.checkstyleReport}/checkstyle_report.xml" out="${doc.checkstyleReport}/checkstyle_report.html" style="${checkstyle.xsl}"/>
</target>

<!-- 运行junit -->
<target name="junit" depends="compilejunit">
<mkdir dir="${doc.junitReport}"/>
<copy todir="${dist.junit}">
<fileset dir="junit_lib">
<exclude name="**/*.jar"/>
</fileset>

<fileset dir="${src.code}">
<include name="fog.hbm.xml"/>
</fileset>
</copy>

<junit printsummary="yes" haltonfailure="no">
<classpath>
<path refid="classpath"/>
<pathelement location="${dist.junit}"/>
</classpath>

<formatter type="brief" usefile="false"/>
<formatter type="xml"/>

<batchtest todir="${doc.junitReport}">
<fileset dir="${dist.junit}" includes="**/*Test.class" />
</batchtest>
</junit>

<junitreport todir="${doc.junitReport}">
<fileset dir="${doc.junitReport}">
<include name="TEST*-*.xml"/>
</fileset>
<report format="frames" styledir="${junit.styleDir}" todir="${doc.junitReport}"/>
</junitreport>
</target>

<!-- 从Vss中获取最新版本 -->
<target name="getVersion" depends="">
<vssget
vsspath="${vss.path}" localpath="." login="codeline,codeline"
ssdir="${vss.ssdir}" serverPath="${vss.svrdir}" autoresponse="N" recursive="true"
quiet="true" />
</target>

<!-- 清除产生的类、junit相关类、文档 -->
<target name="clean">
<delete dir="${dist.classes}"/>
<delete dir="${dist.junit}"/>
<delete dir="${doc.api}"/>
<delete dir="${doc.junitReport}"/>
<delete dir="${doc.checkstyleReport}"/>
</target>

<!-- 清除所有输出结果 -->
<target name="cleanall" depends="clean">
<delete dir="${doc.dir}"/>
<delete dir="${dist.root}"/>
</target>
</project>

分享到:
评论

相关推荐

    ant的build.xml模板

    《Ant的build.xml模板详解与应用》 在软件开发领域,构建工具是不可或缺的一部分,它帮助开发者自动化地完成编译、测试、打包等任务。Apache Ant作为Java领域的一款经典构建工具,以其灵活性和强大的功能深受广大...

    ANT-build.xml命令详解

    本文将深入解析`build.xml`文件的结构和常用元素,帮助你掌握Ant的基本用法。 ### 1. build.xml文件结构 `build.xml`文件通常包含以下几个主要部分: - **项目声明(Project)**:文件的根元素,定义项目的基本...

    Jmeter+ant实现测试报告build.xml和报告模板jmeter-results-newreport.xsl

    然后,在Ant的`build.xml`文件中配置JMeter测试脚本路径、输出结果的目录以及报告模板的位置。运行Ant构建文件,它会执行JMeter测试,生成CSV或XML结果文件,并使用`jmeter-results-newreport.xsl`模板转换成HTML...

    EJB集成ANT的build.xml配置模板

    EJB集成ANT的build.xml配置模板

    用ant编译J2ME代码的build.xml模板

    本文将详细讲解如何利用Ant编译J2ME代码,以及如何使用提供的`build.xml`模板。 首先,我们要理解Ant的基本结构。一个`build.xml`文件是Ant的构建脚本,其中包含了多个目标(target)和任务(task)。每个目标由一...

    ant build.xml范例

    "ant build.xml范例"指的是使用Ant工具时创建的构建配置文件build.xml,它是Ant工作的蓝图,定义了项目的构建过程。 1. **Ant的基本概念** - Ant是一个Java库和命令行工具,其任务是驱动构建过程。 - build.xml...

    Ant build.xml模版

    项目开发时就用的此模版,按照注释部分配置即可

    ant脚本-build.xml

    ant脚本例子,一个build.xml模板, 修改后直接运行。

    salesforce_ant_45.0.zip

    使用Salesforce Ant工具时,开发者通常会创建一个名为build.xml的Ant构建文件,定义各种目标(如`retrieve`、`deploy`等),并在其中设置必要的属性,如登录凭据、API版本和要操作的元数据类型。 总的来说,...

    apache-ant-1.10.5.rar

    5. `build.xml`示例:一个基本的构建脚本模板,用户可以根据自己的项目需求进行修改。 为了在CocosCreator项目中使用Ant进行打包,你需要将解压后的Ant目录添加到系统路径,或者在CocosCreator的构建设置中指定Ant...

    ant安装文件+使用模板

    Ant的核心是`build.xml`文件,这是一个XML格式的脚本,定义了构建过程中的各种任务。以下是一些基本配置和使用方法: 1. **创建build.xml** - 新建一个名为`build.xml`的文件,这是Ant的配置文件。 - 在文件中...

    apache-ant-1.7.0.rar

    Ant是基于XML的,它的核心概念是构建文件(build.xml),其中定义了构建过程的步骤和依赖关系。 **1. Ant的基本概念** - **构建文件**: Ant的工作主要围绕着构建文件展开,这是一个XML文档,包含了构建过程中所有...

    unity3d android 使用ant打包批处理.

    1. **创建Build.xml**:在Unity项目根目录下创建一个名为`Build.xml`的文件,这是Ant的工作脚本。该文件将定义如何编译和打包你的项目。你可以参考Unity官方文档或者网络上的示例模板来编写。 2. **配置Project....

    ant-stylebook.jar.zip

    在实际使用中,解压"ant-stylebook.jar.zip"后,开发者需要将"ant-stylebook.jar"添加到Ant的类路径中,通常是通过在build.xml文件中设置classpath或者将JAR放入ANT_HOME/lib目录下。之后,可以在构建脚本中引入和...

    ant工具使用.zip

    Ant以其XML为基础的构建文件(build.xml)著称,开发者可以自定义构建过程,使其适应各种项目需求。在Java开发中,Ant是项目构建的一个重要选择,尤其是在Maven出现之前,它占据了主导地位。 Ant的核心概念包括以下...

    ant_JMeter.rar

    标签“ant”进一步确认了该压缩包与Ant工具的相关性,意味着其中可能包含Ant构建文件(如build.xml),用于定义和执行测试任务。 根据压缩包子文件的文件名称列表,我们可以推测以下内容: 1. **Test.jtl**:这是...

    Jmeter html样式文件+build配置文件.zip

    压缩包的内容分为两块: 1】jmeter %JMETER_HOME%/extras 下的样式文件 xsl 前端掌握比较好的可以自己写样式 2】使用ant配合jenkins使用的相关配置文件详细介绍(含中文注释)

    build源码---

    Ant之build.xml配置参数模板,源代码,修改后缀名即可

    ant android build config

    这意味着作者提供了关于如何设置和使用Ant构建脚本(build.xml)以及可能涉及的Eclipse项目设置的指导。通过这种方式,开发者可以确保整个团队遵循一致的编码和构建规范,提高代码质量和项目的可维护性。 标签“ant...

    ant项目模板

    模板中的build.xml应包含基本的编译、测试和打包任务,开发者可以根据需要进行定制。 3. **构建目标**:如clean、compile、test、jar等,这些目标对应着构建过程的不同阶段。模板中应该已经预设了这些目标,使得...

Global site tag (gtag.js) - Google Analytics