当前位置: 首页 > 面试题库 >

如何通过特定位置的Ant将文件包含在Jar中

卫高谊
2023-03-14
问题内容

我有一个蚂蚁罐任务:

<target name="jar">
    <jar destfile="${generated.jars.dir}/hello-${environment}.jar">
        <fileset dir="${generated.classes.dir}"/>
        <fileset dir="${environment.dir}/${environment}" includes="config.xml"/>
    </jar>
</target>

我该如何将config.xml文件推送到jar中的特定目录而不是根目录级别,例如在/database/config.xml或类似的内容中…

PS:这样做的原因是我可以拥有hello-local.jar,hello-dev.jar,hello-qa.jar等。


问题答案:

使用zipfileset这样的:

<jar destfile="${generated.jars.dir}/hello-${environment}.jar">
    <fileset dir="${generated.classes.dir}"/>
    <zipfileset dir="${environment.dir}/${environment}" 
                includes="config.xml"
                fullpath="database/config.xml"/>
</jar>


 类似资料:
  • 问题内容: 在我的src文件夹中,还有一个名为data的文件夹,其中包含文件data1.txt和data2.txt。该应用程序在初始化时从这些文件加载​​图形,因此我想将这些文件包含在最终的jar中。我使用Ant来生成jar文件。 问题答案: 来自http://ant.apache.org/manual/Tasks/jar.html的示例: 因此,基本上,您将希望以与上述“资源”相同的方式包括数据

  • 我有一个项目,其包结构如下: SRC/COM/A1 SRC/COM/A2 SRC/COM/A3 SRC/COM/A4 我已经编写了一个gradle脚本来构建jar,其中包含所有包的编译java文件。我只想要“A2”和“A4”包在JAR。但是:a2和a4中的类指的是“A1”和“A3”中的类。

  • 我正在尝试加入一些。txt。png和其他文件转换为我的jar文件。我在src文件夹下创建了一个名为“resources”的文件夹。从IDE运行程序时,程序可以正确找到所有文件。但是,只要我用代码创建一个jar文件,就找不到任何文件。当然,我使用了getClass()。getResource(…)。 有人能帮我吗?:/

  • 问题内容: 我知道在makefile中可以使用一个标志来在所有正在编译的文件中包括头文件,就像有-D标志来包括定义一样。什么标志正好包含头文件。我不记得了。 问题答案: 在编译命令中,可以使用以下选项:

  • 问题内容: 我正在使用Eclipse构建Java项目,该项目是使用Maven构建的。我使用的是旧项目中的一些再生代码,这些类之一在JAR文件夹中查找具有特定名称的文件,然后解析该文件的文本。在此特定示例中,它将查找具有Java接口名称的文件,然后从文件内部获取实现的类名称。 因此,基本上我想做的是 在JAR的“ META-INF / services”文件夹中包含一个文件名(X)和一行文本(Y)的

  • 我正在Eclipse中处理一个Java项目,该项目是使用Maven构建的。我使用的是一个旧项目中回收的代码,其中一个类在JAR的文件夹中查找具有特定名称的文件,然后解析该文件的文本。在这个特定的例子中,它查找一个名为Java接口的文件,然后从文件中获取实现的类名。 所以基本上,我要做的是在JAR的“META-INF/services”文件夹中包含一个文件,文件名为(X),一行文本为(Y)。我猜这应