我正在尝试编写一个 ant 目标,它将基于一堆 java 文件和一些属性文件创建一个 jar,但是在包含当前项目设置方式的属性文件时遇到了麻烦。
这些是我的蚂蚁目标:
1 - 从“myjar.src”文件夹编译 java 源文件,并将生成的类放入“myjar.classes”文件夹。完成后,将所有非 .java 文件从“myjar.src”复制到“myjar.classes”。
2 - 使用 basedir = ${myjar.classes} 使用“jar”命令创建 jar 并告诉它包含所有内容。
这些是我想要的蚂蚁目标:
1 - 编译 java 源文件并将生成的类放入“myjar.classes”文件夹。仅包含 .java 文件
2 - 使用 basedir = ${myjar.classes.location} 使用“jar”命令创建 jars,但还包括“myjar.src”中的 .properties 和 .xml 文件。
关键的区别是,当我使用 basedir = ${myjar.classes} 打包“myjar.classes”中的类时,我希望包含“myjar.src”中的属性和 xml 文件 - 我如何在这些文件中包含它们不在“myjar.classes”下面?
这是我要修改的蚂蚁目标:
<CreateManifest title="myjar classes etc"/>
<jar
destfile="${myProject.build.jars.dir}\ta_test_driver.jar"
basedir="${myjar.classes}"
manifest="${manifest}">
<include name="**"/>
</jar>
我不只是为 basedir 使用上一级目录的原因是项目中的其他 jar 创建调用都没有这样做,我很犹豫是否只为这个进行更改。我确实尝试过这样做,但是在指定正确的目录时遇到了麻烦。(还有其他 jars 使用类似的目录结构,我现在或将来都不想干扰它们。)我只是想知道这些是否是更好的方法?非常感谢。