• Ant 学习及常用任务


    安装与配置

    下载地址:http://ant.apache.org/bindownload.cgi,解压。

    添加系统环境变量:
    ANT_HOME,该变量指向Ant解压后的根目录。
    PATH,追加path目录 %ANT_HOME/bin%;

    安装与配置完毕后,在cmd里运行命令ant --version,若安装和配置成功,则会显示Ant版本信息。

    样例

    <?xml version="1.0"?>
    <project name="helloWorld" default="sayBaseDir">
      <!-- 变量 -->
      <property name="basedir" value="D:workspaceant"/>
      <property name="propertyStudy" value="example"/>
      <property name="name" value="amigo"/>
      <property name="age" value="25"/>
      <property name="classes" value="build/classes"/>
      <property name="build" value="build"/>
      <target name="targetA" if="ant.java.version">
        <!-- 打印一串字符 -->
        <echo message="Java Version: ${ant.java.version}"/>
        <!-- 将消息输出到文件中 -->
        <echo message="Java Version: ${ant.java.version}" file="copy/a.txt" append="true"/>
      </target>
      <!-- 任务依赖 先执行targetA 如果amigo不存在则执行-->
      <target name="targetB" depends="targetA" unless="amigo">
        <description>
          a depend example!
        </description>
        <!-- 打印一串字符 -->
        <echo message="The base dir is: ${basedir}"/>
      </target>
      <target name="copyA">
        <description>
          a copy example!
        </description>
        <echo message="Copy start..."/>
        <!-- 复制单个文件 -->
        <copy file="copy/a.txt" tofile="copy/b.txt"/>
        <!-- 对文件目录进行复制 -->
        <copy todir="copy_res">
          <fileset dir="copy"/>
        </copy>
        <!-- 文件复制到另外的目录 -->
        <copy file="copy/a.txt" todir="copy_res/new_copy"/>
      </target>
      <target name="deleteA">
        <description>
          a delete example!
        </description>
        <echo message="Delete start..."/>
        <!-- 删除某个文件 -->
        <delete file="copy/b.txt"/>
        <!-- 删除某个目录 -->
        <delete dir="copy_res"/>
        <!-- 删除所有的备份目录或空目录 -->
        <delete includeEmptyDirs="true">
          <fileset dir="." includes="**/*.bak"/>
        </delete>
      </target>
      <target name="mkdirA">
        <description>
          a mkdir example!
        </description>
        <echo message="Mkdir start..."/>
        <!-- 创建目录 -->
        <mkdir dir="build"/>
      </target>
      <target name="moveA">
        <description>
          a move example!
        </description>
        <echo message="Mkdir start..."/>
        <!-- 移动单个文件 -->
        <move file="copy_res/a.txt" tofile="copy_res/b.txt"/>
        <!-- 移动单个文件到另一个目录 -->
        <move file="copy_res/b.txt" todir="copy_res/new_copy"/>
        <!-- 移动某个目录到另一个目录 -->
        <move todir="copy_res_new">
          <fileset dir="copy_res"/>
        </move>
      </target>
      <!-- 删除目录 -->
      <target name="clean">
         <delete dir="build"/>
      </target>
      <!-- 进行编译 -->
      <target name="compile" depends="clean">
          <mkdir dir="${classes}"/>
          <javac srcdir="src" destdir="${classes}"/>
      </target>
      <!-- 运行编译运行 -->
      <target name="run" depends="compile">
        <java classname="HelloWorld">
          <classpath>
            <pathelement path="build/classes"/>
          </classpath>
        </java>
      </target>
      <!-- 生成jar文件 -->
      <target name="jar" depends="run">
        <jar destfile="helloworld.jar" basedir="build/classes">
          <manifest>
            <attribute name="Main-class" value="HelloWorld"/>
          </manifest>
        </jar>
      </target>
      <!-- 打war包-->
      <target name="war" depends="compile">
        <war destfile="${build}/antwebproject.war" webxml="WebRoot/WEB-INF/web.xml">
          <!-- 拷贝WebRoot下除了WEB-INF和META-INF的两个文件夹-->
          <fileset dir="WebRoot" includes="**/*.jsp"/>
          <!-- 拷贝lib目录下的jar包-->
          <lib dir="${lib}"/>
          <!-- 拷贝build/classes下的class文件-->
          <classes dir="${classes}"/>
        </war>
      </target>
    </project>
    
    -----------------------------------------------------
    说明:
      a).代码仅供学习交流
      b).本文根据自身经验及网络总结所作,如有错误,谢谢指教
      c).转载请注明出处。
    -----------------------------------------------------
  • 相关阅读:
    Redis教程_2
    Redis教程_1
    机器学习概念_2
    机器学习概念_1
    [极客大挑战 2019]LoveSQL
    [极客大挑战 2019]EasySQL
    [SUCTF 2019]EasySQL
    [强网杯 2019]随便注
    [HCTF 2018] WarmUp
    php代码函数笔记
  • 原文地址:https://www.cnblogs.com/xqbumu/p/5485484.html
Copyright © 2020-2023  润新知