2016-09-20 5 views
0

私はマルチモジュールプロジェクトを持っています。 mavenのクリーンインストールを実行すると、すべてのモジュールが正常にビルドされるため、正しく設定されます。 Webappには、Webサービスに必要な共通の機能が含まれているので、これをWebサービス内の依存関係として含めました。マルチモジュールmavenプロジェクトは依存モジュール用の実行可能なJarをデプロイしていません

Mavenの原子炉の概要:

[INFO] Reactor Summary: 
[INFO] 
[INFO] Parent .................................. SUCCESS [ 0.420 s] 
[INFO] Webapp .................................. SUCCESS [ 6.221 s] 
[INFO] Webservice .............................. SUCCESS [ 5.954 s] 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD SUCCESS 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 12.763 s 
[INFO] Finished at: 2016-09-20T16:27:50-04:00 
[INFO] Final Memory: 18M/238M 
[INFO] ------------------------------------------------------------------------ 

のEclipseするWeb serivceの配備アセンブリにも、Webアプリケーションプロジェクト。ここで

Deployment Assembly Configuration

私のMavenの依存性は、Webアプリケーションモジュールのための私のWebサービスの範囲内である:私はこれを実行しようとすると

<dependency> 
    <groupId>com.company</groupId> 
    <artifactId>webapp</artifactId> 
    <version>16.3</version> 
    <scope>compile</scope> 
</dependency> 

はしかし、私は、次を受け取る:

Caused by: java.lang.ClassNotFoundException: com.company.model.User 

これを解決するには、展開アセンブリからモジュールを削除し、実際に/ targetフォルダに作成されたjarを追加する必要があります。私がこれをしないと、サーバ上のlibフォルダに実行可能なjarファイルが作成されず、webappプロジェクトのフォルダ構造が作成されるように見えます。これを修正するために使用できる設定があるので、サーバーに正しくデプロイされますか?これは私の最初のマルチモジュールのMavenプロジェクトであり、いつかこれで苦労しているし、迷惑になっているので、助言をいただければ幸いです。ありがとう!

+1

Eclipse内でプラグインを使用してWebサービスを実行していますか?あなたはスタンドアロンのアプリケーションサーバーでmavenで構築されたWebサービス戦争を実行しようとしましたか?私は問題がeclipseプロジェクトのメタデータであると思う。 – Sammyrulez

+0

私はEclipse用のm2eプラグインを使用しています。そして、はい、私はターゲットフォルダから生成された戦争を展開するとき、それは正しく動作するので、それはまた、Eclipseがサーバーにどのように展開されているのかと考えていました。ちょうどそれを把握することはできません。私が日食から展開された戦争の中の瓶を見ると、それはディレクトリです。 – ephemeralCoder

+1

私は同じバグを何回も持っていて、決して解決策を見つけられませんでした。 Eclipseサポートファイルを手動で削除して、プロジェクトを再インポートしてください。 – Sammyrulez

答えて

1

eclipseは、ワークスペース内のプロジェクトをmaven依存関係として検索するように見えますが、他のモジュールのクラスを使用するときに問題を引き起こすプロジェクトを依存プロジェクトに追加します。私はこれがチェックされた設定であることを発見しました。私はそれをオフにすると、それがサーバーに正しくjarファイルを追加し、私はにClassNotFound例外に

を取得せずにクラスにアクセスすることができています右のWebプロジェクトをクリック - >プロパティ - > Mavenの

enter image description here

関連する問題