ant build.xml classpath无法识别多个jar文件

时间:2014-01-24 13:12:22

标签: ant jar classpath build.xml

我是蚂蚁的新手,经过一天的研究,我决定自己提问,可以找到任何解决方案。 我正在为我的应用程序创建build.xml但我无法通过class-path属性和多个jar文件夹。 我的/ lib文件夹中有几个文件夹,总共有200多个jar文件,我需要保持分开,因为每个文件夹代表不同的库。 架构看起来

/lib
----- some.jar
----- another.jar
----- /apache
-------------/lib
-----------------/lots of jar files
----- /kettle
-------------/lots of jars

但是在运行build.xml之后,我的一些 jar文件无法识别 代码

    <path id="classpath">
    <fileset dir="lib" includes="*.jar"/>
    <fileset dir="lib/apache-http/lib" includes="**/*.jar" />
    <fileset dir="lib/kettle" includes="**/*.jar" />
</path>
    <!-- Create new directory -->
<target name="compile">
    <mkdir dir="${classes.dir}"/>
    <javac srcdir="${src.dir}" destdir="${classes.dir}" classpathref="classpath">
        <classpath refid="classpath"/>
        <classpath refid="log4j"/>
    </javac>
</target>
    <!-- Create app jar file -->
<target name="jar" depends="compile">       
    <mkdir dir="${jar.dir}"/>
    <jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}">
        <manifest>
            <attribute name="Main-Class" value="${main-class}"/>
            <attribute name="Class-Path" value="lib/syslog4j-0.9.46.jar lib/log4j.jar lib/apache/* lib/kettle/*"/>
        </manifest>
    </jar>
</target>

我确信这条线路是错误的,但经过长时间的研究,我可以找出热点来改变它或用另一个代码和平代替它

 <attribute name="Class-Path" value="lib/syslog4j-0.9.46.jar lib/log4j.jar lib/apache/* lib/kettle/*"/>

我知道如果我手动包含它将起作用的所有jar文件

 <attribute name="Class-Path" value="lib/syslog4j-0.9.46.jar lib/log4j.jar lib/apache/some.jar lib/apache/some1.jar lib/apache/some.jar lib/kettle/some1.jar and so on..."/>

,但我有200多个,而且数量正在增长。

蚂蚁领域的专家? 非常感谢任何提示和帮助

0 个答案:

没有答案
相关问题