【问题标题】:How to make a JAR file from a subset of project classes?如何从项目类的子集制作 JAR 文件?
【发布时间】:2012-03-20 03:12:19
【问题描述】:

我有一个 Java 项目,其中几乎每个类和包都取决于其他所有内容。我正试图解开它。我目前的想法是提取核心类,它不应该依赖于其他任何东西,并将它们打包为应用程序其余部分将使用的单独 JAR。我正在使用 Ant 和 Netbeans。我是一个完整的 Ant 新手,我以为我开始读一本书了。

我尝试制作一个Ant 构建文件,它将在JAR 中编译和打包核心类。但是,无论我做什么,JAR 最终都会包含每个应用程序类。我不确定这是因为我的一些核心类依赖于其他类,这些类会自动拉入 JAR,还是因为我无法正确获取 Ant 指令。这是我当前的构建文件:

<?xml version="1.0" encoding="UTF-8"?>
<project name="Core" default="jar">
<description>Compiles and packages Core packages</description>

<target name="init">
    <mkdir dir="build/classes"/>
    <mkdir dir="dist"/>    
</target>

<target name="compile" depends="init">
    <javac srcdir="src" destdir="build/classes"/>
    </target>

    <target name="jar" depends="compile">
        <jar destfile="dist/core.jar" basedir="build/classes"> 
            <zipfileset dir="build/classes" includes="core/**,xml/**,file/**,exceptions/**"/>
        </jar>
    </target>

</project>

有什么建议吗?

【问题讨论】:

    标签: java ant jar dependencies


    【解决方案1】:

    zipfileset 入口有什么用?以下应该足以过滤到 jar 的选定文件夹。

      <target name="jar" depends="compile">
           <jar destfile="dist/core.jar" basedir="build/classes"  includes="core/**,xml/**,file/**,exceptions/**" />
       </target>
    

    【讨论】:

      猜你喜欢
      • 2012-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-09
      • 1970-01-01
      • 2013-06-13
      • 2011-04-12
      相关资源
      最近更新 更多