【问题标题】:How can I include a folder into the dist JAR as part of the build process using Netbeans?作为使用 Netbeans 构建过程的一部分,如何将文件夹包含到 dist JAR 中?
【发布时间】:2010-08-16 20:24:35
【问题描述】:

我使用的是 Netbeans 6.9,我已经研究过编辑 build.xml 文件,以便可以在构建项目的 jar 文件中包含目录和文件。

所以我的问题是如何修改 build.xml 文件以将其他文件夹放入 jar 中?

我的项目有以下目录结构

ProjectDir/
/images/
/src/com/...
/lib/
and so on..

我希望ant构建脚本构建的jar文件看起来像

project.jar
/com
/lib -- 这应该包括 lib 文件夹中的 jar 文件
/images -- 这应该包括 jpg 文件
/META-INF

我需要这样做,因为我将 jar 文件作为自定义组件“安装”到 Adob​​e Livecycle 中,并且所有 lib jar 文件和图像都需要包含在 jar 中。

另外,如果有一种方法可以在不使用 build.xml 文件的情况下执行此操作,那也可以,目前我只是将文件夹/文件复制到 jar 文件中。

【问题讨论】:

    标签: java netbeans ant build.xml


    【解决方案1】:

    http://ant.apache.org/manual/Tasks/copydir.html

      <copydir src="${base.path}/lib/"
               dest="${build.path}/lib"
      />
    
      <copydir src="${base.path}/images/"
               dest="${build.path}/images"
      />
    
      <copydir src="${base.path}/src/com/"
               dest="${build.path}/com"
      />
      <copydir src="${base.path}/META-INF/"
               dest="${build.path}/META-INF"
      />
    

    http://ant.apache.org/manual/Tasks/jar.html

    <jar destfile="project.jar"
         basedir="${build.path}"
         includes="**/*.*"
         />
    

    【讨论】:

      【解决方案2】:

      如果有人看到这个,现在不推荐使用 copydir,请使用:

      <target name="-post-compile">
          <copy todir="${dist.dir}/ace">
              <fileset dir="src/ace"/>
          </copy>
      </target>
      

      【讨论】:

        猜你喜欢
        • 2015-04-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-09-17
        • 1970-01-01
        • 2021-12-28
        相关资源
        最近更新 更多