首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >集成ant - taskdef类加载程序问题

集成ant - taskdef类加载程序问题
EN

Stack Overflow用户
提问于 2011-05-02 14:41:18
回答 1查看 556关注 0票数 0

在WebLogic10.3中,我的企业应用程序包括一个在其中运行ant脚本的webservice。我的问题是,由于java.lang.ClassNotFoundExceptions,我无法让我的自定义任务运行。

(所有这些都在Tomcat 5.5上运行得很好)

我的任务实现可以在4个不同的位置找到:

  • something.ear/APP-INF/lib/antaddon.jar!/foo/bar/MyTask.class
  • something.ear/Webservice.war/WEB-INF/lib/antaddon.jar!/foo/bar/MyTask.class
  • something.ear/Webservice.war/WEB-INF/classes/foo/bar/MyTask.class
  • server/lib/antaddon.jar!/foo/bar/MyTask.class

我看到Weblogic 10.3集成的Ant 1.6.5模块可能会导致问题,因为我已经捆绑了Ant 1.8.0,所以我添加了

代码语言:javascript
复制
<prefer-application-packages>
    <package-name>antlr.*</package-name>

    <package-name>org.apache.ant.*</package-name>
    <package-name>org.apache.zip.*</package-name>

</prefer-application-packages>

到我的weblogic-application.xml来克服这个问题。(这解决了一些NoSuchMethodErrors.)然而,仍然找不到我的任务:

代码语言:javascript
复制
java.lang.ClassNotFoundException: foo.bar.MyTask.class
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    at org.apache.tools.ant.taskdefs.Definer.addDefinition(Definer.java:457)
    at org.apache.tools.ant.taskdefs.Definer.execute(Definer.java:183)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
    at org.apache.tools.ant.Task.perform(Task.java:364)
    at org.apache.tools.ant.Target.execute(Target.java:341)
    at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:142)
    at org.apache.tools.ant.ProjectHelper.configureProject(ProjectHelper.java:91)

你能帮我解决这个问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-03 10:55:25

问题是我的首选应用程序包指令是错误的,ant类不是在org.apache.ant.*中,而是在org.apache.tools.ant.*中。修复后,我的自定义类将从APP-INF/lib/antaddon.jar加载并运行良好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5858535

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档