0

Spring/Maven プロジェクトを Eclipse (Spring Tools Suite バリアント) にロードし、Run Jetty Run をインストールして、Run Jetty.

問題: Jetty が正しく起動しない:

OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
Running Jetty 9.0.0.M3
ParentLoaderPriority enabled
Enable config class:runjettyrun.webapp.RJRWebInfConfiguration
Enable config class:org.eclipse.jetty.webapp.WebXmlConfiguration
Enable config class:runjettyrun.webapp.RJRMetaInfoConfiguration
Enable config class:org.eclipse.jetty.webapp.FragmentConfiguration
Enable config class:runjettyrun.annotation.RJRAnnotationConfiguration
Enable config class:org.eclipse.jetty.webapp.JettyWebXmlConfiguration
Enable config class:org.eclipse.jetty.webapp.TagLibConfiguration
ProjectClassLoader: entry=/home/nico/src/nemaki/core/target/classes
ProjectClassLoader: entry=/home/nico/.m2/repository/javax/servlet/javax.servlet-api/3.0.1/javax.servlet-api-3.0.1.jar
[... many other JAR libraries, none being Jetty ...]
ProjectClassLoader: entry=/home/nico/.m2/repository/jp/aegif/nemakiware/nemakiware-common/2.3.10/nemakiware-common-2.3.10.jar
Excluded entry=/home/nico/src/nemaki/core/target/test-classes 
2016-09-30 17:17:09.780:INFO:oejs.Server:main: jetty-9.0.0.M3
2016-09-30 17:17:12.121:WARN:oejuc.AbstractLifeCycle:main: FAILED o.e.j.w.WebAppContext@694e1548{/core,[file:/home/nico/src/nemaki/core/WebContent/],STARTING}: java.lang.NoSuchMethodError: org.eclipse.jetty.util.MultiMap.add(Ljava/lang/Object;Ljava/lang/Object;)V
java.lang.NoSuchMethodError: org.eclipse.jetty.util.MultiMap.add(Ljava/lang/Object;Ljava/lang/Object;)V
    at org.eclipse.jetty.annotations.ClassInheritanceHandler.handle(ClassInheritanceHandler.java:56)
    at org.eclipse.jetty.annotations.AnnotationParser$MyClassVisitor.visit(AnnotationParser.java:398)
    at org.objectweb.asm.ClassReader.accept(Unknown Source)

質問: どうすれば修正できますか?

4

2 に答える 2

0

Jetty の不安定なバージョンを実行しています。

バージョン9.0.0.M3は安定したリリースではありません (これは実験的なマイルストーン リリースであり、リリースの候補であり、インテグレーターが最終的なリリースに向けてコードを進化させるのに役立つものです)。

などの安定したリリースを使用する9.3.12.v20160915と、はるかに優れたエクスペリエンスが得られます。

クラスで見つけること9.3.12.v20160915MultiMapできますjetty-util-9.3.12.v20160915.jar

また、Jetty 9 はサーブレット 3.1 であり、3.0.1 ではありません (出力に表示されます)。

于 2016-09-30T18:57:44.383 に答える
0

Joakim が説明したように、9.0.0.M3 は古いバージョンの Jetty です。

幸いなことに、Run Jetty Run は数週間前に更新されました。
最新の Run Jetty Run の使用方法は次のとおりです。

  • Run Jetty Run の既存のバージョンを Eclipse からアンインストールします。
  • この更新サイトを追加します: http://xzer.github.io/run-jetty-run-updatesite/nightly/
  • そこから必要なコンポーネントとオプションのコンポーネントをインストールします 9.3.6
  • これで、Jetty 9.3.6 を使用して Run Jetty Run ができました。これは既に 1 年前のものですが、上記のエラーは発生しません。で必ず選択してくださいRun configurations
于 2016-10-13T08:33:53.470 に答える