12

Spring Tool Suite 3.1 を使用していますが、Web アプリケーションを tomcat にデプロイする際にいくつかの問題があります。

「サーバーで実行」を押してサーバーを起動すると、有名なものがスローされます:

java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

そのため、ディレクトリをチェックし/wtpwebappsて、プロジェクトがデプロイされていることを確認しましたが、libフォルダー内にはいくつかのライブラリしか存在しません。彼らの選択の背後にある理論的根拠を完全に見逃しています。もちろんSpring関連のライブラリはありません。誰でも助けることができますか?

これは私のorg.eclipse.wst.common.commonentファイルです。役に立つかもしれません:

<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId" project-version="1.5.0">
<wb-module deploy-name="Checkup">
    <wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/>
    <wb-resource deploy-path="/" source-path="/WebContent" tag="defaultRootSource"/>
    <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/>
    <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>
    <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/test/java"/>
    <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/test/resources"/>
    <property name="context-root" value="Checkup"/>
    <property name="java-output-path" value="/Checkup/build/classes"/>
</wb-module>

編集:

STS インストールに組み込まれた Maven プラグインのリストを確認できます (カスタマイズなし)。

STS maven プラグイン

4

4 に答える 4

35

プロジェクトを右クリックして配置アセンブリに Maven 依存関係を追加します。配置アセンブリに移動し、maven 依存関係ライブラリを追加します。

于 2012-10-17T10:16:00.513 に答える
17

何時間もの痛みの後、魔法か何かのおかげで問題が解決したようです. 物事を修正した「不思議な」手順は次のとおりです。

  1. プロジェクトをTomcatで実行し、エラーを取得します
  2. プロジェクトがまだサーバー上にある間に、tomcat rclickをきれいにする ---> きれいにする (作業ディレクトリをきれいにするのではなく)
  3. サーバーを再度実行する

トリッキーな部分は、Web アプリがまだデプロイされているときに tomcat をクリーンアップすることです。なぜそれが機能するのか本当にわかりません。サーバーを停止してアプリケーションを削除し、サーバーをクリーンアップしてアプリケーションを再デプロイすると、エラーが発生します。これ以上理解する勇気はありません。謎を受け入れます。

于 2012-10-25T09:32:49.567 に答える
1

この問題を解決する別の方法は、ターミナル (Linux または Mac) またはコマンド プロンプト (Windows) を使用することです。プロジェクトのフォルダーに移動し、次のコマンドを使用します。

mvn eclipse:eclipse -Dwtpversion=2.0

コマンドが正常に実行されると、org.eclipse.wst.common.componentという新しいファイルがプロジェクトの.settingsフォルダー内に作成されます。

サーバーを起動すると、すべての依存ライブラリが自動的に選択されます。

于 2018-08-07T22:34:05.163 に答える