Weblogic 10.3 のエンタープライズ アプリケーションには、内部で ant スクリプトを実行する Web サービスが含まれています。私の問題は、 が原因でカスタム タスクを実行できないこと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
- サーバー/lib/antaddon.jar!/foo/bar/MyTask.class
バンドルされているため、Weblogic 10.3
統合されたAnt 1.6.5
モジュールが問題を引き起こす可能性があることがわかりました。Ant 1.8.0
<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
..)しかし、私のタスクはまだ見つかりません:
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)
これを解決する方法を教えてください。