私はこの問題に何度か遭遇しましたが、(半)信頼できる解決策に出くわしただけなので、他の人に役立つ場合や忘れた場合に備えて、ここに投稿し、誰かがいるかどうかを尋ねると思いました根本的な原因が何であるか、そしてなぜ私の修正が機能するのかについての考えがあります。
問題-Eclipseの[サーバーで実行]オプションを使用してTomcat7サーバーで実行したいSpring3Webアプリケーションがあります。一部のプロジェクトではこれは正常に機能しますが、一部のプロジェクトは壊れた状態になり、サーバーが起動するたびに、org.springframework.web.servlet.DispatcherServletというクラスが見つかりません。
WEB-INF/lib
調査の結果、プロジェクトのMaven依存関係がにコピーされていないことがわかりました。${PROJECT_LOCATION}/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/
プロジェクトに問題パネルに警告があることに最終的に気付く前に、私は多くのことを試しました。
Classpath entry org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER
will not be exported or published. Runtime ClassNotFoundExceptions may result.
おそらく私はこれにもっと早く気づいたはずです。
とにかく、これを選択して「クイックフィックス」を実行すると問題が修正され、プロジェクトを問題なく実行できます。簡単な修正方法は、「関連付けられた生のクラスパスエントリを公開/エクスポートの依存関係としてマークする」ことです。
問題は、これは機能しますが、それが何を意味するのかわかりません。完了した後、プロジェクト構成に明らかな変更が見られません。私は実際の問題が何であるか、そして私がそれが再び起こるのを避けることができるかどうかを知りたいです。また、他のほとんどすべてを試したような気がするので、自分で(クイック修正を実行する以外に)修正できることがあるかどうかも知りたいです。
ご協力いただきありがとうございます。