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>

 

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • bfs官网_山谷和山脉

    bfs官网_山谷和山脉FGD小朋友特别喜欢爬山,在爬山的时候他就在研究山峰和山谷。为了能够对旅程有一个安排,他想知道山峰和山谷的数量。给定一个地图,为FGD想要旅行的区域,地图被分为 n×n 的网格,每个格子 (i,j) 的高度 w(i,j) 是给定的。若两个格子有公共顶点,那么它们就是相邻的格子,如与 (i,j) 相邻的格子有(i−1,j−1),(i−1,j),(i−1,j+1),(i,j−1),(i,j+1),(i+1,j−1),(i+1,j),(i+1,j+1)。我们定义一个格子的集合 S 为山峰(山谷)当且仅当:

    2022年8月9日
    4
  • 硬盘分区 mbr gpt_磁盘阵列如何分区

    硬盘分区 mbr gpt_磁盘阵列如何分区目录思维导图硬盘的物理结构硬盘读写过程寻址方式CHS寻址LBA寻址硬盘的分区结构MBR分区结构0号扇区内容扩展分区GPT分区结构文件系统文件系统的定义文件系统的结构raid磁盘阵列技术raid-0raid-1raid-5raid-10和raid-01思维导图本篇只涉及到导图的右侧,只讲述硬盘的结构…

    2022年8月11日
    7
  • PHPstrom 2021.2激活码破解方法[通俗易懂]

    PHPstrom 2021.2激活码破解方法,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月14日
    59
  • 微商分销系统怎么做?[通俗易懂]

    微商分销系统怎么做?[通俗易懂]当下微商有多“火”?相信各位朋友们都很清楚,不管个户还是企业都纷纷加入这个行列,然而许多企业受困于不懂推广,形成产品销售不出的局面。那么这个问题应该怎么解决呢?此时分销悄然而至。当然,企业想要对产品展开分销,首先网站商城得具备分销功能。企业想要建立一个具备分销功能的商城分销网站?那么,微商分销…

    2022年5月17日
    27
  • 爬虫(2)之re 爬取淘宝网「建议收藏」

    爬虫(2)之re 爬取淘宝网「建议收藏」我们通过requests可以很轻松地就获得网页上的所有内容,但是这些内容往往会夹杂着许多我们不需要的东西,因此我们需要解析和提取HTML数据。在先前介绍过的解析和提取html内容的库,只能够处理静态文本执行简单的搜索,缺乏灵活性,不能处理动态的文本信息。下面来介绍一下正则表达式。什么是正则表达式?正则表达式是用来简洁表达一组字符串的表达式正则表达式是一种通用的字符串表达框架正则表…

    2022年6月18日
    33
  • 科学计算机度转弧度,角度弧度换算器在线(70°角度转换弧度)

    科学计算机度转弧度,角度弧度换算器在线(70°角度转换弧度)1°=0.01745rad1rad=57.30°计算过程:1°=π/180≈0.01745rad1rad=180/π=57.30°扩展资料:数学上是用弧度而非角度,因为360的容易整除对数学不重要,而数.角度是DEG,弧度是RAD,梯度是GRA。转换模式的方法是按MODE,然后按相应的键。不同型号可能不一样求采纳!!!!!!!!!!1弧度=180/π度1度=…

    2022年6月30日
    146

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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