50

コードベースで構成された Mavenized Spring 3.2.4 Web アプリがあります。最初に Maven/pom.xml を使用してアプリをビルドすると、web.xml が見つからないというエラーが発生しました。最初に、空の web.xml を作成しようとしました。これは、プロジェクトのファセットが変化した瞬間でした (理由はわかりません)。動的 Web モジュール 3.0 から 3.1 に切り替えましたが、これは元に戻すことができません。どうすれば Dynamic Web Modules 3.0 に変更できますか???

ここに画像の説明を入力

さらに、JAX-RS を削除できません。これを試すと、次のようになります。

Failed while uninstalling JAX-RS (REST Web Services) 1.0.
org.eclipse.jst.javaee.web.internal.impl.WebAppImpl cannot be cast to org.eclipse.jst.j2ee.webapplication.WebApp

後で、適切なプラグインを pom.xml に挿入することで、Maven コンパイル エラーを回避できることがわかりました。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.4</version>
    <configuration>
        <failOnMissingWebXml>false</failOnMissingWebXml>
    </configuration>
</plugin>
4

9 に答える 9

72

私は日食で同様の問題を抱えていましたが、それを修正する唯一の方法は

  • Web モジュールを削除する
  • 申し込み
  • モジュールのバージョンを変更する
  • モジュールを追加する
  • 構成 (ダイアログの下部にあるさらに構成可能なリンク)
  • 申し込み

デフォルトでは /WebContent/ 内の Web ファイルを検索するため、適用する前に Web モジュールを構成してください。これは、Maven プロジェクトの構造であるべきものではありません。

編集

他に何も役に立たない場合の2番目の方法は次のとおりです

  • Eclipse を終了し、ファイル システムのプロジェクトに移動してから、.settings フォルダーに移動します。
  • を開き、org.eclipse.wst.common.project.facet.core.xmlバックアップを作成し、Web モジュール エントリを削除します。
  • そこで Web モジュールのバージョンを変更することもできますが、保証はありません。
于 2013-10-29T15:53:40.007 に答える
2

Eclipse プロジェクトのプロパティを開き、[Project Facets] で [Dynamic Web Module] の選択を解除します。[OK Maven] -> [Update project] をクリックします。

于 2017-01-03T14:22:07.550 に答える
0

プロジェクト org.eclipse.wst.common.project.facet.core.xml を開き、最初に変更してから、Web モジュール タグの行を削除しました。プロジェクトをクリーンアップし、毎回 Tomcat で起動しましたが、それでも実行されませんでした。ラインを戻し(そのまま)、プロジェクトをクリーンアップしました。Eclipse で Tomcat の設定を開き、Tomcat のスタートアップにプロジェクトを手動で追加しました (右クリック + 追加と削除)。プロジェクトをクリックし、サーバーで実行...を選択しましたが、すべて問題ありませんでした。

于 2015-06-08T18:41:39.627 に答える
0
  1. ワークスペースの場所に移動
  2. プロジェクトフォルダーを選択します
  3. .setting フォルダー
  4. 「org.eclipse.wst.common.project.facet.core」を編集
  5. インストールされている facet="jst.web" version="3.0" を変更する
于 2019-09-26T08:46:12.267 に答える