`
sillycat
  • 浏览: 2552697 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

ant的构建入门(二)

    博客分类:
  • JAVA
阅读更多
学习学习公司一个牛人写的build.xml文件

<project name="MyProject" default="compile" basedir=".">
<!-- set global properties for this build -->
<property name="project" value="ipcamera"/>
<property name="src" location="src"/>
<property name="web" location="WebRoot"/>
<property name="web-lib" location="${web}/WEB-INF/lib"/>
<property name="build" location="build"/>
<property name="dist" location="dist"/>
<property name="lib-compile" location="lib"/>

<path id="classpath.compile">
       <fileset dir="${web-lib}">
         <include name="**/*.jar"/>
       </fileset>
       <fileset dir="${lib-compile}">
         <include name="**/*.jar"/>
       </fileset>
       <pathelement path="${build}"/>
</path>
 
    <target name="init">
     <!-- Create the build directory structure used by compile -->
     <mkdir dir="${build}"/>
     <mkdir dir="${dist}"/>
</target>

<target name="compile" depends="init" description="compile the source" >
<mkdir dir="${build}/classes"/>
    <!-- Compile the java code from ${src} into ${build} -->
    <javac srcdir="${src}" destdir="${build}/classes" debug="true" deprecation="true" optimize="false" failonerror="true" encoding="utf-8">
     <classpath refid="classpath.compile"/>
    </javac>
</target>

<target name="copyWebFiles" depends="compile">
    <mkdir dir="${build}/web"/>
<copy todir="${build}/web">
   <fileset dir="${web}" excludes="WEB-INF/classes/">
   </fileset>
</copy>
<copy todir="${build}/web/WEB-INF/classes">
   <fileset dir="${build}/classes">
   </fileset>
   <fileset dir="${src}">
    <exclude name="**/*.java"/>
    <exclude name="ipcamera.properties"/>
    <exclude name="ipcamera.properties.*"/>
   </fileset>
</copy>
</target>

<target name="config4debug">
   <copy file="${src}/ipcamera.properties" tofile="${dist}/ipcamera.properties"/>
</target>

<target name="config4release">
   <copy file="${src}/ipcamera.properties.prod" tofile="${dist}/ipcamera.properties"/>
</target>

<target name="config4test">
   <copy file="${src}/ipcamera.properties.test" tofile="${dist}/ipcamera.properties"/>
</target>

<target name="config4beta">
   <copy file="${src}/ipcamera.properties.beta" tofile="${dist}/ipcamera.properties"/>
</target>

<target name="buildWar">
<mkdir dir="${dist}"/>
<war destfile="${dist}/${project}.war" webxml="${build}/web/WEB-INF/web.xml">
   <fileset dir="${build}/web"/>
</war>
</target>

<target name="jarWebServices">
   <jar destfile="${dist}/webservices-interface.jar" basedir="${build}/classes" includes="com/megaeyes/ipcamera/service/webservice/**" excludes="com/megaeyes/ipcamera/service/webservice/impl/**,com/megaeyes/ipcamera/service/webservice/tools/**"/>
</target>

<target name="zipWeb">
   <zip destfile="${dist}/web.zip" basedir="pages" excludes="demo/**"/>  
</target>

<target name="war" depends="clean,copyWebFiles,config4debug,buildWar,zipWeb" description="generate the war package for personal debug" >
</target>

<target name="release" depends="clean,copyWebFiles,config4release,buildWar,zipWeb" description="generate the war package for release" >
</target>

<target name="intTest" depends="clean,copyWebFiles,config4test,buildWar,zipWeb" description="generate the war package for integration test" >
</target>

<target name="beta" depends="clean,copyWebFiles,config4beta,buildWar,zipWeb" description="generate the war package for integration test" >
</target>

<target name="clean" description="clean up" >
    <!-- Delete the ${build} and ${dist} directory trees -->
    <delete dir="${build}"/>
    <delete dir="${dist}"/>
</target>

</project>
分享到:
评论

相关推荐

    Ant入门-ant入门pdf

    《Ant入门》是一本专为初学者设计的电子书,主要涵盖了Apache Ant这一构建工具的基础知识和使用方法。Ant是Java开发中广泛使用的自动化构建工具,由Apache软件基金会开发,其设计目标是简化项目构建过程,使开发者...

    Ant 入门资料(完整版)

    Ant是Apache软件基金会下的一个Java构建工具,它在软件开发领域扮演着自动化构建和部署的角色。这个"Ant入门资料(完整版)"包含了丰富的学习资源,帮助初学者快速掌握Ant的基本概念、用法以及实际应用。 《JUnit...

    Ant 经典入门资料

    Apache Ant 是一个由Java开发的开源构建工具,它在软件工程中被广泛用于自动化构建、测试和部署Java项目。Ant以其灵活性和可扩展性而著名,它的核心概念是基于XML的构建文件,其中包含了编译、打包、测试等任务的...

    ant入门小实例练习

    总的来说,“ant入门小实例练习”是一个很好的起点,通过实践可以让你快速掌握Ant的基本操作,为后续更复杂的Java项目构建打下坚实的基础。在实践中,你还可以学习如何利用Ant管理依赖、执行单元测试、构建Web应用,...

    ant入门编写例子,非常简单实效哦

    Eclipse是一个流行的Java开发环境,支持插件集成,允许开发者在IDE内部使用Ant构建项目。集成Ant可以使开发流程更加顺畅,无需离开IDE就能执行构建任务。 标签“ant 例子 简单 java”揭示了主要内容将围绕Ant的实际...

    初学者ant入门级小实例

    1. **Ant的安装与配置**:首先,你需要下载Ant的二进制发行版,并将其解压到合适的目录。配置环境变量`ANT_HOME`指向解压后的目录,同时将`%ANT_HOME%\bin`添加到系统路径中,以便在命令行中直接运行Ant命令。 2. *...

    ANT项目构建

    #### 三、Ant构建文件详解 **构建文件**:构建文件是Ant的核心,它是一个XML文件,通常命名为 `build.xml`。这个文件定义了项目的构建逻辑,包括构建的不同阶段、依赖关系以及具体的操作指令。 - **基于XML的结构*...

    Ant基本使用指南(入门教程)

    Apache Ant 是一个强大的Java项目构建工具,它被广泛应用于软件开发流程中,特别是在处理复杂的构建过程时。Ant基于XML来定义构建任务,这些任务被称为构建文件(buildfile),其中包含了构建项目的步骤,如编译源...

    Apache Ant入门教程

    Apache Ant 是一个基于 Java 的构建工具,由 James Duncan Davidson 创建,其名称源于“another neat tool”的缩写。Ant 在软件开发中的主要作用是管理和自动化源代码到可执行文件的转换过程,确保每次构建的一致性...

    ant入门资料.快速上手

    ### Ant入门资料:快速上手 #### 一、Ant简介 **1.1 什么是Ant** Apache Ant 是一个Java环境下的构建工具,主要用于自动化编译、测试、部署等任务。它采用XML格式来定义构建过程,使开发者能够通过简单的配置文件...

    shell ant Ant入门与进阶

    《Shell与Ant:入门与进阶》 Shell脚本与Apache Ant是软件开发中的两个重要工具,它们在构建、管理和自动化任务中起着至关重要的作用。这篇文章将带你深入理解这两个工具的基本概念,以及如何在实际工作中高效运用...

    Ant入门学习手册(java ant教程)

    ### Ant入门学习手册:深入解析Java项目构建利器 #### Ant:Java项目构建的灵活与高效之选 在软件开发领域,构建工具扮演着至关重要的角色,它们负责将源代码及其它资源转换为可执行文件或产品镜像。Ant,作为一款...

    Ant使用指南-Ant入门手册

    #### 二、Ant 的优势 - **跨平台性**:Ant 是基于 Java 的,因此它可以在任何支持 Java 的操作系统上运行,无需修改构建脚本。 - **简单性**:Ant 的语法简洁明了,易于理解和维护。 - **灵活性**:Ant 支持多种...

Global site tag (gtag.js) - Google Analytics