我是蚂蚁的新手,经过一天的研究,我决定自己提问,可以找到任何解决方案。 我正在为我的应用程序创建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多个,而且数量正在增长。
蚂蚁领域的专家? 非常感谢任何提示和帮助