0

请原谅我问了一个简单的问题。我是 ant 新手,我正在尝试构建一个 jar 文件。我有一个文件

jaxb.in​​dex

包结构内部

com/mycom/mg/适配器

我正在尝试将此文件打包到我的 jar 中

<target name="dist" description="Create distributable jar file">
   <jar destfile="${common.lib.dir}/${dist.file}">
      <fileset dir="${build.classes.dir}"/>
      <zipfileset  
            file="${sms.syn.dir}/jaxb.index">
      </zipfileset>
  </jar>
</target>

我想要 jaxb.in​​dex 文件在同一个包 com/mycom/mg/adapter 中,但是当我使用上面的代码时,ant 将它添加到 jar 的根目录中。谁能帮我吗?

编辑 使用

<zipfileset  
            file="${sms.syn.dir}/jaxb.index" fullpath="com/mycom/mg/adapter">
</zipfileset>

也无济于事。

4

2 回答 2

2

看来您应该使用属性prefix而不是fullpath

<zipfileset  
            file="${sms.syn.dir}/jaxb.index" prefix="com/mycom/mg/adapter">
</zipfileset>

我认为这fullpath也应该有效,但您应该指定真正的完整路径,即带有文件名的路径:fullpath="com/mycom/mg/adapter/jaxb.index"

于 2013-05-16T17:03:37.443 回答
1

您可能必须像这样使用

<zipfileset dir="${sms.syn.dir}" includes="jaxb.index" fullpath="com/mycom/mg/adapter"/>
于 2013-05-16T17:03:46.097 回答