ant - 如何使用ant将jar文件包含到ear文件的lib文件夹中?

标签 ant

我有以下文件夹结构:

project.ear
        lib folder
            ProjectEJBClient.jar
        META-INF folder
        projectEJB.jar

我的 build.xml包含以下几行来创建 EAR 包
<ear destfile="${build.dir}/myapp.ear" appxml="${src.dir}/metadata/application.xml">
      <fileset dir="${build.dir}" includes="ProjectEJBClient.jar"/>
      <fileset dir="${build.dir}" includes="projectEJB.jar"/>
</ear>

上面的代码无法创建一个带有 lib 文件夹的 EAR 包,其中包含 ProjectEJBClient.jar文件

我想创建一个 lib 文件夹并复制 ProjectEJBClient.jar进入那个lib文件夹。

在这个过程之后,我想用这个 lib 文件夹制作一个 EAR 项目。

我不知道如何创建 lib 文件夹并复制 ProjectEJBClient.jar进入该文件夹并将此文件夹包含到 project.ear 中。

最佳答案

使用 zipfileset :

  <ear destfile="${build.dir}/myapp.ear" appxml="${src.dir}/metadata/application.xml">
    <zipfileset dir="." prefix="lib">
      <include name="ProjectEJBClient.jar"/>
    </zipfileset>
    <fileset dir="${build.dir}" includes="projectEJB.jar"/>
  </ear>
prefix="lib"将确保 jar 位于 /lib 下在你的耳朵里。

关于ant - 如何使用ant将jar文件包含到ear文件的lib文件夹中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10072835/

相关文章:

java - 通过 Ant 任务运行 javac 时如何查看编译器输出?

xml - 如何使用 Ant 更新 XML 文档

java - 从 Ivy 检索中排除本地项目

java - 如何覆盖 ant.core.lib 位置

java - 使用 ant 和 ivy 管理重复的 jar 文件

java - 更改 JAR 的默认包

java - Lego Mindstorms ev3 leJOS 在编译期间查找库

java - 无法编译此命令(Java 和 Ant 相关)

java - 如何让 Ant 更喜欢链接 JAR 中的类而不是 JDK 类?

eclipse - 在 Eclipse 的 Ant 中使用 exec 标记。如何扩展PATH?