【发布时间】:2010-10-05 19:34:24
【问题描述】:
我有一个项目需要访问其自己的 JAR 文件中的资源。当我为项目创建 JAR 文件时,我想将一个目录复制到该 JAR 文件中(我猜 ZIP 等效项是将目录“添加”到现有 ZIP 文件中)。我只希望在创建 JAR 之后发生副本(如果我清理并删除 JAR 文件,我显然不希望发生副本)。
目前构建文件如下所示:
<?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>
一些构建任务是从另一个文件 (common-tasks.xml) 中调用的,这里我无法显示。
【问题讨论】:
-
为什么不在创建 JAR 文件时添加资源?这就是我在其中包含包含非代码资源的 JAR 文件的构建中所做的。
-
因为为创建 JAR 文件而定义的任务是在另一个我无法更改的文件中定义的。
-
这样就行了!那好吧。我很高兴其他人以解决您问题的方式回答。