1

Maven を使用してビルドし、Eclipse(Tomcat ランタイム) で実行しているアプリケーションがありますが、正常に動作しています。しかし、プロジェクトの WAR を (Eclipse を使用せずに) Tomcat にデプロイすると、失敗します。エラーは、私が含めた coustome jar によるものです。

スタック トレースは次のとおりです。

Aug 26, 2013 3:18:16 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error in dependencyCheck
java.io.IOException: Jar: smartcharging-model.jar
    at org.apache.catalina.util.ExtensionValidator.validateApplication(ExtensionValidator.java:207)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5256)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.manager.ManagerServlet.start(ManagerServlet.java:1256)
    at org.apache.catalina.manager.HTMLManagerServlet.start(HTMLManagerServlet.java:714)
    at org.apache.catalina.manager.HTMLManagerServlet.doPost(HTMLManagerServlet.java:219)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.filters.CsrfPreventionFilter.doFilter(CsrfPreventionFilter.java:212)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:611)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.util.zip.ZipException: invalid distance too far back
    at java.util.zip.InflaterInputStream.read(Unknown Source)
    at java.util.zip.ZipInputStream.read(Unknown Source)
    at java.util.jar.JarInputStream.read(Unknown Source)
    at java.io.BufferedInputStream.read1(Unknown Source)
    at java.io.BufferedInputStream.read(Unknown Source)
    at java.util.jar.JarInputStream.getBytes(Unknown Source)
    at java.util.jar.JarInputStream.checkManifest(Unknown Source)
    at java.util.jar.JarInputStream.<init>(Unknown Source)
    at java.util.jar.JarInputStream.<init>(Unknown Source)
    at org.apache.catalina.util.ExtensionValidator.getManifest(ExtensionValidator.java:395)
    at org.apache.catalina.util.ExtensionValidator.validateApplication(ExtensionValidator.java:196)
    ... 29 more

Aug 26, 2013 3:18:16 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error getConfigured
Aug 26, 2013 3:18:16 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [/Smart-0.0.1-SNAPSHOT] startup failed due to previous errors
Aug 26, 2013 3:18:16 PM org.apache.catalina.util.LifecycleBase stop
INFO: The stop() method was called on component [WebappLoader[/Smart-0.0.1-SNAPSHOT]] after stop() had already been called. The second call will be ignored.
4

5 に答える 5

0

走る

mvn clean install

そしてあなたのコードをもう一度

于 2013-08-26T10:30:49.513 に答える
0

jarが破損しているようです。ローカル リポジトリ (~/.m2/repository) から削除してみましたか?

mvn clean package

また ?Eclipse は、コマンド ラインで war をビルドするために使用するものと同じリポジトリを共有しない場合があります。

于 2013-08-26T13:21:55.780 に答える
0

上記のコマンドをすべて実行した後でも、まだ問題があります。今のところ、サーバーにデプロイされたターゲットからその JAR ファイルを削除してから、再度コピーするという回避策を見つけました。JARを手動でコピーすると問題が解決すると思います。

于 2013-09-10T03:55:43.957 に答える