[英]Ant classpath Order
如何在ant中设置classpath顺序?
具体来说,当我尝试运行我的ant构建时,我需要它来获取jar中的类(jaxws-api.jar)而不是jre中的同一个类。 我目前正在设置类路径以明确包含那些罐子,但它似乎仍然首先拿起jre。 我正在寻找的是在“Build Configuration”菜单下eclipse中的Order / Export的某种类型。
编辑:我会更明确。 我有一些用CXF 2.1.3生成的类。 他们调用javax.xml.ws.Service#getPort(QName,Class,WebServiceFeature ...)。 我使用的是Java 1.6.02版。 该方法在该版本的该类中不存在。 但是,它确实存在于类的jaxws版本(以及更高版本的JRE类)中。 当我尝试进行ant构建时,总是在jaxws版本之前拾取JRE类。 这使我的编译失败。 如何修改我的类路径以将JRE放在最后?
我无法更改JRE版本,因此请不要将其作为修复建议,除非它是唯一可能的版本。
我在使用Google Web工具包和servlet 3.0 API文件时遇到了同样的问题。 我需要确保我的servlet API jar在GWT库jar之前。 这是有效的:
<path id="classpath">
<filelist>
<file name="${build.input}/__lib__/servlet-api.jar"/>
</filelist>
<fileset dir="${build.input}/__lib__">
<include name="*.jar" />
</fileset>
<fileset dir="${build.input}/WEB-INF/lib">
<include name="*.jar" />
</fileset>
</path>
请注意,首先需要首先列出文件列表中的jar,然后我可以添加其他目录中的jar。 我在接受的答案中尝试了bootclasspath并且它不起作用。
ant类路径中的jar按您声明的顺序放置。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.