0

metro から最新の jax-ws コードにアップグレードしたばかりですが、何らかの理由で ant も出荷する必要があります。これは、jsp のコンパイルに必要なようです。

それがなければ、私たちは得る

java.lang.NoClassDefFoundError: org/apache/tools/ant/BuildListener
    at org.apache.jasper.compiler.Compiler.initJavaCompiler(Compiler.java:742)
    at org.apache.jasper.compiler.Compiler.<init>(Compiler.java:131)
    at org.apache.jasper.JspCompilationContext.createCompiler(JspCompilationContext.java:288)
    at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:605)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:360)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:486)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:380)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
    at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
    at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
    at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
    at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:440)
    ......

ant への依存を取り除く方法はありますか?

jax-ws は、変更されていない jsp ライブラリにどのように影響しますか?

ありがとうニール

4

1 に答える 1

0

Jettyは、「コンパイラー-実行時に決定されます。Jettyの場合、Eclipsejdtコンパイラーです」と述べています。http://docs.codehaus.org/display/JETTY/Jsp+Configurationを参照してください。

ビルド中にcore-3.1.1.jarがパッケージ化されていなかったようです(これはjax-wsの変更が原因である必要があります)。これが欠落している場合、桟橋からの警告はありません。代わりに、jasperはantの使用を試みることにフォールバックします(これにより、クラスが見つからないという例外が発生します)。

手動でcore-3.1.1.jarをインストールに含めると、jspコンパイルが機能します。

于 2012-07-09T16:20:17.620 に答える