1

こんにちは、私はこのようなマルチモジュールmavenプロジェクトを持っています..

  1. ウェブ

私のWebプロジェクトはCoreプロジェクトクラスに依存しているため、 CoreプロジェクトをWebプロジェクトのpom.xmlファイルに依存関係として追加しました。しかし、 Webプロジェクトを実行しているときにEclipse内からlibディレクトリにクラスパスにCore-project.jarファイルが含まれていないため、プロジェクトが実行されていません。この問題を解決するにはどうすればよいですか?..私のWebプロジェクト* Pom.xml * ファイルで使用したプラグイン..

<plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-eclipse-plugin</artifactId>
                <version>2.9</version>
                <configuration>
                    <downloadSources>true</downloadSources>
                    <downloadJavadocs>true</downloadJavadocs>
                    <wtpversion>2.0</wtpversion>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.5.1</version>
            </plugin>
        </plugins>

そして私はTomcat6サーバーを使用しています。

私のWebプロジェクトpom.xmlファイルのこの依存関係タグ...

<dependency>
            <groupId>org.csdc</groupId>
            <artifactId>core-java</artifactId>
            <version>5.0.0</version>
        </dependency>

そして、Eclipse内からWebプロジェクトを実行すると、このパスにcore.jarがありません....

workspace_maven.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\web\WEB-INF\lib

誰もがそのような問題を抱えています。もしそうなら、どうすればこの問題を解決できますか?

4

6 に答える 6

1

Eclipse 用の m2e および m2e-wtp プラグインをインストールします。m2e-wtp は Web プロジェクトと tomcat を処理します。質問で文書化した pom のプラグイン セクションは必要ありません。

Maven が Eclipse でプロジェクトを操作するには、親プロジェクトが子プロジェクトと同じレベルにあり、親プロジェクトの pom が次のようになっていることを確認する必要があります。

<modules>
    <module>../project1</module>
    <module>../project2</module>
</modules>

残念ながら、これはマルチモジュール ビルドの eclipse および jenkins で maven を正しく動作させる唯一の方法です。

于 2012-11-08T12:57:05.610 に答える
1

Eclipse では、クラスパスに core.jar を含める必要はありません。ライブラリを確認してください (web->properties->java build path->librairies)。core.jar ではなく、core フォルダーが表示されます。

Mavenビルドターゲットで「ワークスペースの依存関係を解決する」がチェックされていることを確認してください。

于 2012-11-08T12:36:03.453 に答える
0

mvn clean packageを実行した後、ターゲットディレクトリでwarを確認してください。そこに欠落している場合は、pom.xmlの「Web」の「Core」の依存関係のスコープを確認し、提供されていないことを確認するか、テストしてください。

pomフラグメントから、mvn eclipse:eclipseを使用しているように聞こえます(これはもう使用しないでください)。代わりに、m2eclipseプラグインを使用してください:http://www.sonatype.org/m2eclipse

于 2012-11-07T20:26:44.317 に答える
0

正しいプラグイン セットをインストールし、正しく構成します。

より詳細な回答が必要な場合は、何を達成しようとしたか、どのプラグインを使用したか、どの種類の Web サーバーをデプロイしたか、デプロイに Maben を使用したか、Eclipse WTP を使用したかなど、より多くの情報を提供してください。

[編集] Eclipse でプロジェクトを開始すると、project/WEB-INF/lib には何も表示されません。このフォルダーは使用されないため、そこに何も入れても意味がありません。

代わりに、おそらくプロジェクトを Web サーバーにデプロイします。それを行うことができるEclipse用のプラグインがあります(つまり、Webサーバーを起動し、プロジェクトをそこにデプロイします)が、Eclipse内でプロジェクトをどのように「開始」するか、使用しているEclipseのバージョンとどのボタンをクリックしたか、Eclipse をどのように構成したかなど、あなたを助けるのは本当に難しいです。

于 2012-11-07T13:18:20.033 に答える
0

これが探しているものであることは明確ではありませんが、jar はリポジトリにあるため、Eclipse の lib ディレクトリの下には表示されません。

私のバージョンのEclipseには、プロジェクトを右クリックすると「maven」メニューがあります。あなたもそうする場合は、「Maven Nature を有効にする」が選択されていることを確認してください。これにより、プロジェクト名の横に小さな M が表示され、プロジェクト内に新しいフォルダーが表示されます。このフォルダーには、pom にリストされているすべての依存関係が含まれています。

于 2012-11-07T16:12:52.087 に答える
0

1. Web プロジェクトのビルド パスに移動 -> ライブラリ - 変数の追加 -> 変数の構成 -> 新規 -> 名前を M2_REPO として、パスを C:\Users\usernmee.m2\repository として入力し、[OK] をクリックします。すべての依存関係は、プロジェクトのビルド パスで構成されます。したがって、Web プロジェクトでコンパイル エラーは発生しません。
2.Maven プロジェクトは戦争を取り、それを任意の Web コンテナー (Tomcat など) にデプロイする必要があります。

于 2012-11-07T16:57:20.973 に答える