Ant学习---第二节:Ant添加文件夹和文件夹集的使用

一、创建 java 项目(Eclipse 中),结构图如下:

1、创建 .java 文件,代码如下:

package com.learn.ant;

public class HelloWorld {

    public static void main(String[] args) {
        for(String arg : args)
            System.out.println("Hello World" + arg);
    }

}

2、创建 build.xml 文件,代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<project  default="create">
    <target name="create">
        <!-- mkdir标签用于创建一个目录,它有一个属性dir用来指定所创建的目录名 -->
        <mkdir dir="build"/>
    </target>
</project>

3、运行测试,会创建出一个 build 文件夹:

image

4、删除锁创建的文件夹,修改 .xml 文件,代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<project  default="create">
    <target name="create">
        <!-- mkdir标签用于创建一个目录,它有一个属性dir用来指定所创建的目录名 -->
        <delete dir="build"/>
    </target>
</project>

5、测试

二、添加文件夹和拷贝文件

1、创建文件夹,代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<project  default="init">
    <target name="init">
        <!-- mkdir标签用于创建一个目录,它有一个属性dir用来指定所创建的目录名 -->
        <mkdir dir="build"/>
        <mkdir dir="build/src"/>
        <mkdir dir="build/classes"/>
        <mkdir dir="build/dist"/>
    </target>
</project>

2、拷贝文件夹,代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<project  default="copySrc">
    <target name="init">
        <!-- mkdir标签用于创建一个目录,它有一个属性dir用来指定所创建的目录名 -->
        <mkdir dir="build"/>
        <mkdir dir="build/src"/>
        <mkdir dir="build/classes"/>
        <mkdir dir="build/dist"/>
    </target>
    <!-- depends表示依赖的目标 -->
    <target name="copySrc" depends="init">
        <!-- todir 表示目标目录 -->
        <copy todir="build/src">
            <!-- 通过文件集将src 下的 .java 文件拷贝到 build/src -->
            <fileset dir="src" includes="**/*.java"></fileset>
        </copy>
    </target>
</project>

3、运行测试,项目结构图如下:

image

4、通过应用外部文件集标签来拷贝文件,代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<project  default="copySrc">
    <!-- fileset数据类型定义了一组文件 -->
    <fileset id="src.path" dir="src">
        <!-- include 是用逗号分隔的,需要包含的文件模式列表 dir表示fileset 的基目录-->
        <include name="**/*.*"/>
        <!-- excludes 是用逗号分隔的需要派出的文件模式列表 -->
        <exclude name="**/Test*"/>
    </fileset>
    <target name="init">
        <delete dir="build"/>
        <!-- mkdir标签用于创建一个目录,它有一个属性dir用来指定所创建的目录名 -->
        <mkdir dir="build"/>
        <mkdir dir="build/src"/>
        <mkdir dir="build/classes"/>
        <mkdir dir="build/dist"/>
    </target>
    <!-- depends表示依赖的目标 -->
    <target name="copySrc" depends="init">
        <!-- todir 表示目标目录 -->
        <copy todir="build/src">
            <!-- 通过 refid 可以引用外部标签 -->
            <fileset refid="src.path"></fileset>
        </copy>
    </target>
</project>
原文地址:https://www.cnblogs.com/hwlsniper/p/4099936.html