0

在我更改类路径以包含另一个 jar 文件之前,我有像下面这样的 unjar ant 任务一直在工作。想知道解压 javac.classpath 中列出的每个 jar 的诀窍是什么。基本上,一旦 javac.classpath 有多个 jar 文件,它就会中断。我是蚂蚁新手。我试图找出一种方法来枚举 javac.classpath 中的每个 jar 并将其解压缩到 build.classes.dir 文件夹。

    <unjar dest="${build.classes.dir}">
        <fileset file="${javac.classpath}" >
        </fileset>
    </unjar>
4

1 回答 1

0

如果 javac.classpath 指向一个文件夹,那么

<unjar dest="${build.classes.dir}">
    <fileset dir="${javac.classpath}" >
    </fileset>
</unjar>

将解压缩该文件夹中的所有 jar 文件。

如果 javac.classpath 是逗号/分号分隔的文件路径列表,那么您应该稍微更改脚本以使用文件集,例如;

<?xml version="1.0" encoding="UTF-8"?>
<project name="Un-jar Demo" default="un-jar">

    <fileset id="javac.classpath" dir="/path/to/jar/folder">
        <include name="jar-file-1.jar" />
        <include name="jar-file-2.jar" />
    </fileset>

    <target name="un-jar">

        <unjar dest="test">
            <fileset  refid="javac.classpath">
            </fileset>
        </unjar>

    </target>

</project>

当然,您可以找到一些其他方法将逗号分隔的文件列表转换为文件集

于 2016-09-25T13:22:51.710 回答