我有一个项目需要访问自己的JAR文件中的资源。当我为该项目创建JAR文件时,我想将一个目录复制到该JAR文件中(我猜等效的ZIP会将该目录“添加”到现有的ZIP文件中)。我只希望在创建JAR之后发生副本(并且如果我清理并删除JAR文件,我显然不希望发生副本)。如何使用Ant将文件复制到现有的JAR中?
目前的build文件看起来像这样:
<?xml version="1.0" encoding="UTF-8"?>
<project name="foobar" basedir=".." default="jar">
<!-- project-specific properties -->
<property name="project.path" value="my/project/dir/foobar" />
<patternset id="project.include">
<include name="${project.path}/**" />
</patternset>
<patternset id="project.jar.include">
<include name="${project.path}/**" />
</patternset>
<import file="common-tasks.xml" />
<property name="jar.file" location="${test.dir}/foobar.jar" />
<property name="manifest.file" location="misc/foobar.manifest" />
</project>
一些构建任务是从另一个文件(共tasks.xml),我不能在这里显示调用。
为什么不在创建JAR文件时添加资源?这就是我在构建中所做的,其中包含JAR文件,其中包含非代码资源。 – Eddie 2009-02-05 22:23:20
因为为创建JAR文件而定义的任务是在另一个我无法更改的文件中定义的。 – troyal 2009-02-05 22:27:54
这会做到!好吧。我很高兴别人用解决你问题的方式回答。 – Eddie 2009-02-05 22:32:28