Java Jar Ant包含文件夹

时间:2012-02-19 11:09:19

标签: java ant jar directory

我的问题是:我如何通过ant将文件放入我的jar中的子目录?现在我的代码是:

<jar destfile="${dist.dir}\wo42.jar" basedir="bin">
<manifest>
    <attribute name="Main-Class" value="org.alternativedev.wo42.App" />
    <attribute name="Class-Path" value="lib" />
</manifest>
<zipgroupfileset dir="lib/." excludes="natives/*" />
<fileset dir="data/." includes="." />

它创建了一个像

这样的结构
ROOT-Jar
-org
--bla
-filefromdata1
-filefromdata2

但它应该是

ROOT-Jar
-org
--bla
-data
--filefromdata1
--filefromdata2

你知道我的意思吗?

问候,BigTeddy

2 个答案:

答案 0 :(得分:15)

将最后一行更改为

<fileset dir="." includes="data/**" />

无需复制文件。

另一种方法(如果你想让档案中的目录有不同的名字,这很有用)

<zipfileset dir="data" includes="." prefix="folder-name-in-jar"/>

答案 1 :(得分:2)

首先,您创建所需的文件结构并将所有文件复制到其中。然后在生成的根目录上运行jar命令。

要复制文件,您可以使用ANT copy task 例如:

<copy todir="../dest/dir">
<fileset dir="." includes="data/**/*.java">
</fileset>

更多关于如何打包jar(基础知识)here