【发布时间】:2011-05-08 09:45:46
【问题描述】:
我是 ant 和 java 的新手,我正在努力将第三方 ant 库 awstasks 合并到我的 ant 构建脚本中。
如果我将它复制到 usr/share/ant/lib 路径中,我可以让这个 jar 开始加载,但它会失败并出现异常
找不到类 dak.ant.taskdefs.S3Upload 所需的类:org/jets3t/service/S3ServiceException 使用类加载器 AntClassLoader
然后我下载了 jets3t.jar 文件并将其放在 ant/lib 路径中,只是为了让它在另一个依赖项上失败。我知道在 ant/lib 路径中包含 jar 文件的这种路径不是处理这些 3rd 方插件及其依赖项的正确方法。
然后我对使用路径导入必要的 jar 文件进行了一些研究,并一直在尝试使用这些路径来解决依赖问题,但没有成功。蚂蚁路径声明如下:
<path id="projet.classpath" description="The default classpath.">
<pathelement path="../awsUpload/awstasks-read-only/lib/"/>
<fileset dir="../awsUpload/awstasks-read-only/lib/">
<include name="**/*.jar"/>
</fileset>
</path>
我可以从构建输出中看到它正在加载以下 jar 文件,据我所知,这些文件应该包括它失败的 jets3t 依赖项:
AntClassLoader[/Users/travis/workspace/Sudoko/build/lib:/Users/travis/workspace/Sudoko/build/lib/jets3t/jars/cockpit-0.8.0.jar:/Users/travis/workspace/ Sudoko/build/lib/jets3t/jars/cockpitlite-0.8.0.jar:/Users/travis/workspace/Sudoko/build/lib/jets3t/jars/jets3t-0.8.0.jar:/Users/travis/workspace/ Sudoko/build/lib/jets3t/jars/jets3t-gui-0.8.0.jar:/Users/travis/workspace/Sudoko/build/lib/jets3t/jars/synchronize-0.8.0.jar:/Users/travis/工作区/Sudoko/build/lib/jets3t/jars/uploader-0.8.0.jar]
我也尝试使用路径方法加载awstasks jar文件,但没有成功。
如果有人能给我一些关于我哪里出错以及我应该做什么的指导,我将不胜感激。
【问题讨论】: