`
kaishiba
  • 浏览: 59075 次
  • 性别: Icon_minigender_1
  • 来自: 西安
最近访客 更多访客>>
社区版块
存档分类
最新评论

ant 配置文件

    博客分类:
  • ant
阅读更多
<?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.rar (12.5 KB)
  • 下载次数: 15
分享到:
评论

相关推荐

    ant配置文件

    标题“ant配置文件”指的是Ant项目中的核心文件——build.xml。这个文件是Ant构建过程的蓝图,包含了所有构建任务和它们的依赖关系。它定义了如何编译源代码、打包应用、执行测试以及部署项目。在myEclipse这样的...

    Ant 配置文件详解

    本文将深入解析Ant配置文件的各个方面,帮助你理解和掌握Ant的工作原理。 一、`build.xml` 文件结构 `build.xml` 文件遵循XML语法,包含了一系列的目标(targets)和任务(tasks)。每个目标可以包含多个任务,任务...

    maven下通用的ant配置文件

    maven下通用的ant配置文件,只要0积分。只需修改11行末尾的target/自己的工程名即可。

    ant 配置文件集合

    在软件开发过程中,Ant配置文件起着至关重要的作用,它定义了项目的构建流程和规则。以下是对Ant配置文件及其相关知识点的详细解释: 1. **Ant基本结构与配置元素** - `build.xml`:这是Ant的主要配置文件,其中...

    ANT配置文件详解

    【ANT配置文件详解】 ANT(Apache Ant)是一个Java构建工具,它通过XML配置文件(通常命名为build.xml)来管理项目的构建、编译、测试和部署流程。Ant的主要优点包括跨平台性、简单易用和良好的可扩展性。它能够...

    jax生成client代码的Ant配置文件模板

    总结一下,JAX-WS通过Ant配置文件实现的客户端代码生成是一个自动化的过程,它极大地简化了开发人员的工作,使得与Web服务的交互变得更加便捷。在实际开发中,可以根据项目的具体需求调整这个模板,比如更改WSDL文件...

    EJB的Ant配置文件build.xml

    EJB的Ant配置文件build.xml,每段代码附有中文说明,通俗易懂,还根据不同版本的JBoss有不同的配置说明,以及需要修改的点。本人使用的是JBoss7.1.1,这其中也说明了更老版本的配置方式,完全能理解修改

    一个简单的ant配置文件,初学者有点用

    利用ant处理java的编译、生成、打包等基本功能。写的非常简单。

    Ant以及middlegen配置文件(示例配置)

    在"Ant配置文件"这个标签中,我们将重点讨论如何在Ant的构建文件中设置 middlegen的相关任务。 middlegen是针对Hibernate的一个反向工程工具,它可以从现有的数据库模式生成Java Beans和Hibernate的映射文件(Hbm)。...

    ant打包配置文件build.xml

    ant打包配置文件,参考了博主的文章,作者:失语失芯不失梦 链接:https://www.jianshu.com/p/04cfce59890a 来源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    ant的build配置文件

    本文将深入探讨Ant的build配置文件及其在软件开发中的应用。 Ant的build配置文件通常命名为`build.xml`,它是整个构建过程的核心。这个文件包含了构建项目的各种任务,如编译源代码、打包、测试以及部署等步骤。XML...

    Ant配置实例[文].pdf

    首先,`&lt;project&gt;`标签是Ant配置文件的基本结构,它定义了项目的名字(name属性)和基础目录(basedir属性)。在本例中,项目名为"rndProject",基础目录为当前目录("."),默认执行的任务为"deployAndReload"。 `...

    build.xml ant构建配置文件

    build.xml ant构建配置文件

    jocky 混淆编译 ant

    2. 在ant配置文件中添加 3. 设置Jocky的一些基本属性,包括jocky.jar包的位置,以及混淆编译级别: 4. 当设置jocky的enable属性为true时,此时,Ant脚本中的javac编译命令,便会被自动替换成Jocky编译器;当设置...

    ant 将依赖的jar包和classes文件一起打成可执行jar

    1. **Ant配置文件**:Ant的工作是基于一个名为`build.xml`的配置文件,这个文件列出了所有的构建任务。在这个例子中,我们看到有一个名为`build.xml`的文件,这就是Ant的配置文件。 2. **元素**:这是Ant配置文件的...

    [转]使用Ant管理配置Weblogic

    6. **Ant配置文件**: 在Ant中,WebLogic相关的任务会写入`build.xml`文件。例如,你可以定义一个目标(target)来启动WebLogic Server,另一个目标来部署应用。每个任务通常会引用WebLogic的JAR文件,如`weblogic....

    ant配置ant配置

    本文将深入探讨Ant配置的相关知识点,以及如何利用Ant实现高效开发。 首先,我们来理解Ant的基本结构。一个Ant项目通常由一个名为`build.xml`的主配置文件构成,其中包含了各种任务(tasks)和目标(targets)。...

    ejb里的ant配置XML文档

    通过以上解析可以看出,这份Ant配置文件提供了一种自动化构建EJB应用程序的方法。它不仅定义了项目的结构和依赖关系,还详细描述了从准备环境、编译代码、打包文件到最后部署和卸载应用的一系列步骤。这种高度定制化...

Global site tag (gtag.js) - Google Analytics