如何从项目类的子集中创建JAR文件?

时间:2012-03-01 15:52:47

标签: java ant jar dependencies

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

我尝试制作一个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>

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

zipfileset条目有什么用?以下内容足以过滤选择文件夹中的jar。

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