ant的安装和使用

ant的安装和使用1.ant的安装1.1添加环境变量:ANT_HOME=D:\software\ant\apache-ant-1.10.1在path中添加:%ANT_HOME%\bin1.2测试是否安装成功

大家好,又见面了,我是你们的朋友全栈君。

1.ant的安装

  1.1 添加环境变量:ANT_HOME=D:\software\ant\apache-ant-1.10.1

    在path中添加:%ANT_HOME%\bin

  1.2 测试是否安装成功

    在cmd中输入ant,如果出现如下提示表示安装成功

    <span role="heading" aria-level="2">ant的安装和使用

2.定义简单的build.xml

  2.1 创建HelloWord.java

package test;
public class HelloWorld{
    public static void main(String[] args){
        System.out.println("hello world!");
    }
}

  2.2 创建build.xml

<?xml version="1.0" encoding="UTF-8" ?> <!-- 定义project节点,和默认运行的target,和工作根目录 --> <project name="HelloWorld" default="run" basedir="."> <!-- 定义变量 --> <property name="src" value="src"/> <property name="dest" value="classes"/> <property name="hello_jar" value="hello.jar"/> <!-- 定义target --> <target name="init"> <!-- 创建目录 --> <mkdir dir="${dest}"/> </target> <!-- depends:依赖的target --> <target name="compile" depends="init"> <!-- 将srcdir目录中的文件进行编译,并将编译后的文件放入到destdir目录中 --> <javac srcdir="${src}" destdir="${dest}"/> </target> <target name="build" depends="compile"> <!-- 将basedir目录中的文件打成jar包 --> <jar jarfile="${hello_jar}" basedir="${dest}"/> </target> <target name="run" depends="build"> <!-- 运行classname --> <java classname="test.HelloWorld" classpath="${hello_jar}"/> </target> <target name="clean"> <!-- 删除dir目录和file文件 --> <delete dir="${dest}"/> <delete file="${hello_jar}"/> </target> <target name="rerun" depends="clean,run"> <!-- 运行clean和run target --> <ant target="clean"/> <ant target="run"/> </target> </project>

3. 合并多个build.xml

  3.1 假设下边有三个小组,每个小组负责一部分,他们每个下面都有src和build.xml

  3.2 创建一个总的build.xml

<?xml version="1.0" encoding="UTF-8"?> <project name="main" default="build" basedir="."> <property name="bin" value="${basedir}\bin"/> <property name="src1" value="${basedir}\src1"/> <property name="src2" value="${basedir}\src2"/> <property name="src3" value="${basedir}\src3"/> <target name="init"> <mkdir dir="${bin}"/> </target> <target name="run"> <!-- 分别运行各个目录下的target --> <ant dir="${src1}" target="run"/> <ant dir="${src2}" target="run"/> <ant dir="${src3}" target="run"/> </target> <target name="clean"> <ant dir="${src1}" target="clean"/> <ant dir="${src2}" target="clean"/> <ant dir="${src3}" target="clean"/> </target> <target name="call"> <ant dir="${src1}" target="build"/> <ant dir="${src2}" target="build"/> <ant dir="${src3}" target="build"/> </target> <target name="build" depends="init,call"> <!-- 复制指定的文件到todir --> <copy todir="${bin}"> <fileset dir="${src1}"> <include name="*.jar"/> </fileset> <fileset dir="${src2}"> <include name="*.jar"/> </fileset> <fileset dir="${src3}"> <include name="*.jar"/> </fileset> </copy> </target> <target name="rebuild" depends="build,clean"> <ant target="clean"/> <ant target="build"/> </target> </project>

3 使用properties文件配置属性,和公共xml

  3.1 创建all.properties设置变量

src1=D:\\software\\ant\\test\\test3\\src1 src2=D:\\software\\ant\\test\\test3\\src2 src3=D:\\software\\ant\\test\\test3\\src3

  3.2 创建include.xml,设置公共的变量和target

<?xml version="1.0" encoding="UTF-8"?> <property name="src" value="src"/> <property name="dest" value="classes"/> <target name="test"> <ant target="run"/> </target>

  3.3 在总build中使用使用all.properties设置变量

<?xml version="1.0" encoding="UTF-8"?> <project name="main" default="build" basedir="."> <!-- 读取配置文件中的变量 --> <property file="all.properties"/> <property name="bin" value="${basedir}\bin"/> <target name="init"> <mkdir dir="${bin}"/> </target> <target name="run"> <ant dir="${src1}" target="run"/> <ant dir="${src2}" target="run"/> <ant dir="${src3}" target="run"/> </target> <target name="clean"> <ant dir="${src1}" target="clean"/> <ant dir="${src2}" target="clean"/> <ant dir="${src3}" target="clean"/> </target> <target name="call"> <ant dir="${src1}" target="build"/> <ant dir="${src2}" target="build"/> <ant dir="${src3}" target="build"/> </target> <target name="build" depends="init,call"> <copy todir="${bin}"> <fileset dir="${src1}"> <include name="*.jar"/> </fileset> <fileset dir="${src2}"> <include name="*.jar"/> </fileset> <fileset dir="${src3}"> <include name="*.jar"/> </fileset> </copy> </target> <target name="rebuild" depends="build,clean"> <ant target="clean"/> <ant target="build"/> </target> <target name="test"> <ant dir="${src1}" target="test"/> <ant dir="${src2}" target="test"/> <ant dir="${src3}" target="test"/> </target> </project>

  3.4 在每个小组的build.xml中引用include.xml的变量和target

<?xml version="1.0" encoding="UTF-8" ?> <!-- 引入外部的xml,在本xml中就可以使用引入的xml中的变量和target --> <!DOCTYPE project[ <!ENTITY share-variable SYSTEM "file:../include.xml"> ]> <project name="HelloWorld" default="run" basedir="."> <!-- 使用变量 --> &share-variable; <!-- 这两个变量在公用的xml中已经定义,使用&share-variable就可直接使用 <property name="src" value="src"/> <property name="dest" value="classes"/> --> <property name="hello_jar" value="hello1.jar"/> <target name="init"> <mkdir dir="${dest}"/> </target> <target name="compile" depends="init"> <javac srcdir="${src}" destdir="${dest}"/> </target> <target name="build" depends="compile"> <jar jarfile="${hello_jar}" basedir="${dest}"/> </target> <target name="run" depends="build"> <java classname="test.HelloWorld" classpath="${hello_jar}"/> </target> <target name="clean"> <delete dir="${dest}"/> <delete file="${hello_jar}"/> </target> <target name="rerun" depends="clean,run"> <ant target="clean"/> <ant target="run"/> </target> </project>

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/154841.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • php allow_url_include,allow_url_include的应用和解释

    php allow_url_include,allow_url_include的应用和解释PHP常常因为它可能允许URLS被导入和执行语句被人们指责。事实上,这件事情并不是很让人感到惊奇,因为这是导致称为RemoteURLIncludevulnerabilities的php应用程序漏洞的最重要的原因之一。因为这个原因,许多安全研究人员建议在php.ini配置中禁用指向allow_url_fopen。不幸的是,许多推荐这种方法的人,并没有意识到,这样会破坏很多的应用并且并不能保证1…

  • tomcat启动日志乱码怎么解决_tomcat出现乱码

    tomcat启动日志乱码怎么解决_tomcat出现乱码打开cd到tomcat/conf/目录下修改logging.properties找到java.util.logging.ConsoleHandler.encoding=utf-8这行更改为java.util.logging.ConsoleHandler.encoding=GBK如果对你有帮助还望资金上支持…

  • win10键盘win键失效了[通俗易懂]

    win10键盘win键失效了[通俗易懂]与系统无关,应该是键盘关闭了win键。按Fn+windows键启用/关闭windows键,  

  • 局域网与广域网详解区别_广域网有哪些

    局域网与广域网详解区别_广域网有哪些1.局域网  局域网,英文名字LocalAreaNetwork,缩写为LAN。是指在某一区域内由多台计算机互联成的计算机组。一般是方圆几千米以内。局域网是封闭型的,可以由办公室内的两台计算机组成,也可以由一个公司内的上千台计算机组成。生活中我们的每一个学校、公司都是一个局域网局域网可以理解为我们自己使用路由器、交换机组成的内部网络这个网络实现的是内部机器的通信,比如咱们访问学校的…

    2022年10月19日
  • linux中top命令详解_top是什么命令

    linux中top命令详解_top是什么命令top命令Linuxtop命令用于实时显示process的动态。top参数详解第一行,任务队列信息**系统当前时间:**13:52:56**系统开机后到现在的总运行时间:**up66

  • 转化ico标志

    转化ico标志

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号