<?xml version="1.0" encoding="GBK"?>
<project name="ch25" default="build" basedir=".">
<!-- //定义不同的日期格式 -->
<tstamp>
<format property="TODAY_UK" pattern="d-MMMM-yyyy" locale="en"/>
</tstamp>
<tstamp>
<format property="TODAY_CN" pattern="d-MMMM-yyyy" locale="zh"/>
</tstamp>
<tstamp>
<format property="touch.time" pattern="MM/dd/yyyy hh:mm aa" offset="-5" unit="hour"/>
</tstamp>
<!-- //输出的日期格式定义 -->
<target name="timestampTarget" >
<echo message="${DSTAMP}"/>
<echo message="${TODAY_UK}" />
<echo message="${TODAY_CN}" />
<echo message="${touch.time}" />
</target>
<!-- //定义变量 -->
<property name="build.dir" value="${basedir}/build"/>
<property name="build.src" value="${basedir}/build/src"/>
<property name="build.webinf" value="${basedir}/build/WEB-INF"/>
<property name="build.dest" value="${basedir}/build/WEB-INF/classes"/>
<property name="project.file" value="${basedir}/ch25"/>
<!-- //读取环境变量 -->
<property environment="env"/>
<!-- //读取环境变量 path中可以定义fileset 用法一样-->
<path id="classpath">
<pathelement path="${env.CATALINA_HOME}/common/lib/servlet-api.jar"/>
</path>
<target name="init" depends="timestampTarget">
<echo>init_${DSTAMP}_${ant.project.name}_{build.dir}/${DSTAMP}${TSTAMP}.war</echo>
<echo>JAVA_HOME_${env.JAVA_HOME}</echo>
<echo message="CLASSPATH_${env.CLASSPATH}"/>
<mkdir dir="${build.dir}"/>
<mkdir dir="${build.src}"/>
<mkdir dir="${build.webinf}"/>
<mkdir dir="${build.dest}"/>
<copy todir="${build.dir}">
<fileset dir="${project.file}">
<include name="**/*.jsp"/>
<include name="*.html"/>
<include name="images/**"/>
<include name="src/**"/>
<include name="WEB-INF/*.*"/>
<exclude name="build.xml"/>
</fileset>
</copy>
</target>
<target name="compile" depends="init"
description="编译源代码,输出到build目录下。">
<javac srcdir="${build.src}" destdir="${build.dest}">
<classpath refid="classpath"/>
</javac>
</target>
<target name="build" depends="compile"
description="在build目录下建立ch24.war">
<war destfile="${build.dir}/${ant.project.name}.war"
webxml="${build.webinf}/web.xml">
<fileset dir="${build.dir}">
<include name="*.jsp"/>
<include name="*.html"/>
<include name="images/**"/>
</fileset>
<classes dir="${build.dest}"/>
</war>
</target>
<target name="clean" depends="init"
description="删除build文件">
<delete dir="${build.dir}"/>
</target>
<!--部署tomcat-->
<target name="deploy" depends="build">
<copy todir="${env.CATALINA_HOME}/webapps">
<fileset dir="${build.dir}">
<include name="${ant.project.name}.war"/>
</fileset>
</copy>
</target>
<!--卸载tomcat-->
<target name="undeploy">
<delete file="${env.CATALINA_HOME}/webapps/${ant.project.name}.war"/>
<delete dir="${env.CATALINA_HOME}/webapps/${ant.project.name}"/>
</target>
<!--启动tomcat-->
<target name="start-tomcat" description="tomcat starting.....">
<exec executable="${env.CATALINA_HOME}/bin/startup.bat" spawn="true" vmlauncher="false">
<arg line="/c start ${env.CATALINA_HOME}/bin/startup.bat" />
</exec>
</target>
<!--关闭tomcat-->
<target name="tomcat.stop">
<java jar="${env.CATALINA_HOME}/bin/bootstrap.jar" fork="true">
<jvmarg value="-Dcatalina.home=${env.CATALINA_HOME}"/>
<arg line="stop"/>
</java>
<waitfor maxwait="5" maxwaitunit="second">
<available file="errors.log"/>
</waitfor>
</target>
<!-- 使用JDK的native2ascii工具执行本地化操作,转换编码。 -->
<target name="locale">
<echo>Target ----- [locale]</echo>
<exec dir="${basedir}/${ant.project.name}/app-classpath" executable="native2ascii" os="Windows XP">
<arg line="-encoding gb2312 MessageResources_temp.properties MessageResources_zh_CN.properties"/>
</exec>
</target>
<!--jar -->
<target name="jar" depends="compile">
<jar jarfile="${build.dir}/${ant.project.name}.jar" basedir="${build.dest}" >
</jar>
</target>
<!--利用属性文件定义变量 -->
<property file="build.properties" />
<target name="getproperties" >
<echo message="${tomcat.dir}" />
<echo message="${build.dest}" />
</target>
<!-- 执行其他的build.xml 文件 ant -f changeBuild.xml -->
<!--
Ant任务(执行多个构件文件)
ant antfile="subfile/projectB.xml" 【引用执行projectB.xml 执行dafault命令】
target="target2" output="out.log" 【引用执行projectB.xml 执行target2命令 并把结果打印在out.log文件中】
【当被引用的文件中 有主文件的属性时 被引用的文件属性被覆盖】
-->
<target name="callProjectB">
<echo message="In projectA calling projectB"/>
<ant antfile="subfile/projectB.xml" />
</target>
<target name="callProjectBbyTargetName">
<echo message="In projectA calling projectB"/>
<ant antfile="subfile/projectB.xml" target="target2" output="out.log"/>
</target>
<property name="porjectPro" value="project" />
<property name="porjectProB" value="projectB" />
<property name="porjectProC" value="projectC" />
<target name="callbyMySelf">
<echo message="In projectA calling projectB == ${porjectPro} == ${porjectProB} == ${porjectProC}"/>
<ant antfile="subfile/projectB.xml" target="target2" output="out.log"/>
<echo message="In projectA calling projectB == ${porjectPro} == ${porjectProB} == ${porjectProC}"/>
</target>
<!--用Ant安装和构建Hibernate项目 -->
<!-- antcall 需要测试param 和 porperty 的覆盖关系-->
<!--
<target name="init" >
<echo message="In init target"/>
</target>
<target name="targetA">
<echo message="In targetA calling targetB"/>
<property name="prop" value="prop property" />
<antcall target="targetB" >
<param name="path1" value="path1 param" />
</antcall>
<echo message="After call targetB" />
</target>
<target name="targetB" depends="init">
<echo message="In targetB" />
<echo message="path1=${path1}" />
<echo message="prop=${prop}" />
</target>
-->
<!--未执行成功-->
<!--
未执行成功
● if和unless
● refid属性:这个属性代表当前project中的属性id。
● torefid属性:用于指定在被调用的project中的引用id。
● 将jar转成exe文件
-->
</project>
build.properties
tomcat.dir=C:/ApacheGroup/Tomcat5.5
分享到:
相关推荐
标题“ant配置文件”指的是Ant项目中的核心文件——build.xml。这个文件是Ant构建过程的蓝图,包含了所有构建任务和它们的依赖关系。它定义了如何编译源代码、打包应用、执行测试以及部署项目。在myEclipse这样的...
本文将深入解析Ant配置文件的各个方面,帮助你理解和掌握Ant的工作原理。 一、`build.xml` 文件结构 `build.xml` 文件遵循XML语法,包含了一系列的目标(targets)和任务(tasks)。每个目标可以包含多个任务,任务...
maven下通用的ant配置文件,只要0积分。只需修改11行末尾的target/自己的工程名即可。
在软件开发过程中,Ant配置文件起着至关重要的作用,它定义了项目的构建流程和规则。以下是对Ant配置文件及其相关知识点的详细解释: 1. **Ant基本结构与配置元素** - `build.xml`:这是Ant的主要配置文件,其中...
【ANT配置文件详解】 ANT(Apache Ant)是一个Java构建工具,它通过XML配置文件(通常命名为build.xml)来管理项目的构建、编译、测试和部署流程。Ant的主要优点包括跨平台性、简单易用和良好的可扩展性。它能够...
总结一下,JAX-WS通过Ant配置文件实现的客户端代码生成是一个自动化的过程,它极大地简化了开发人员的工作,使得与Web服务的交互变得更加便捷。在实际开发中,可以根据项目的具体需求调整这个模板,比如更改WSDL文件...
EJB的Ant配置文件build.xml,每段代码附有中文说明,通俗易懂,还根据不同版本的JBoss有不同的配置说明,以及需要修改的点。本人使用的是JBoss7.1.1,这其中也说明了更老版本的配置方式,完全能理解修改
利用ant处理java的编译、生成、打包等基本功能。写的非常简单。
在"Ant配置文件"这个标签中,我们将重点讨论如何在Ant的构建文件中设置 middlegen的相关任务。 middlegen是针对Hibernate的一个反向工程工具,它可以从现有的数据库模式生成Java Beans和Hibernate的映射文件(Hbm)。...
ant打包配置文件,参考了博主的文章,作者:失语失芯不失梦 链接:https://www.jianshu.com/p/04cfce59890a 来源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
本文将深入探讨Ant的build配置文件及其在软件开发中的应用。 Ant的build配置文件通常命名为`build.xml`,它是整个构建过程的核心。这个文件包含了构建项目的各种任务,如编译源代码、打包、测试以及部署等步骤。XML...
首先,`<project>`标签是Ant配置文件的基本结构,它定义了项目的名字(name属性)和基础目录(basedir属性)。在本例中,项目名为"rndProject",基础目录为当前目录("."),默认执行的任务为"deployAndReload"。 `...
build.xml ant构建配置文件
2. 在ant配置文件中添加 3. 设置Jocky的一些基本属性,包括jocky.jar包的位置,以及混淆编译级别: 4. 当设置jocky的enable属性为true时,此时,Ant脚本中的javac编译命令,便会被自动替换成Jocky编译器;当设置...
1. **Ant配置文件**:Ant的工作是基于一个名为`build.xml`的配置文件,这个文件列出了所有的构建任务。在这个例子中,我们看到有一个名为`build.xml`的文件,这就是Ant的配置文件。 2. **元素**:这是Ant配置文件的...
6. **Ant配置文件**: 在Ant中,WebLogic相关的任务会写入`build.xml`文件。例如,你可以定义一个目标(target)来启动WebLogic Server,另一个目标来部署应用。每个任务通常会引用WebLogic的JAR文件,如`weblogic....
本文将深入探讨Ant配置的相关知识点,以及如何利用Ant实现高效开发。 首先,我们来理解Ant的基本结构。一个Ant项目通常由一个名为`build.xml`的主配置文件构成,其中包含了各种任务(tasks)和目标(targets)。...
通过以上解析可以看出,这份Ant配置文件提供了一种自动化构建EJB应用程序的方法。它不仅定义了项目的结构和依赖关系,还详细描述了从准备环境、编译代码、打包文件到最后部署和卸载应用的一系列步骤。这种高度定制化...