2016-10-03 4 views
5

私はプロジェクトに2つの異なるMavenモジュールを持っています.1つは角度jsのものを持つuiモジュールとjerseyを使って安らかなWebサービスを持つサービスモジュールです。私の質問はここにあります。とにかく、私はこのサービスモジュールをpom.xmlのuiモジュールへの依存として追加し、サービスとしてuiモジュールから使用できますか?ここでのアイデアは、両方の戦争として両方を展開するのではなく、一つの戦争として展開することです。jarのようなJavaの快適なサービスwarの依存関係

+0

を '' pom.xml' groupid'と 'artifactid'と' varsion'などのサービスモジュールの依存関係を追加:メインプロジェクトのpom.xmlが含まれている必要があります – Srinivasu

答えて

0

これは私が私のいくつかのプロジェクトでやっていることで、

1.Firstはmodulesタグを使用して、両方のUIとサービスコンポーネント/プロジェクトのためのコンテナ/親として動作する空のプロジェクトを作成します。その中にmoduleの両方を指定します。それをAPPと呼ぶことができます。

プロジェクトをビルドするには、APPをビルドし、両方のモジュールをビルドし、APPをサーバーにデプロイします。

これはのみpom.xml

は、UIプロジェクトにdependencyとしてpom.xml

2.Specifyサービスプロジェクトにwarとしてpackagingを指定すると、単に空白のMavenプロジェクトです。

3.サービスとUIプロジェクトの両方でAPPプロジェクトをparentと指定します。

これが役立ちますように!

1

サービスモジュールをJARとして生成することができます。 pom.xmlが含まれている必要があります

<packaging>jar</packaging> 

そして

<plugin> 
    <artifactId>maven-assembly-plugin</artifactId> 
    <version>2.2</version> 
    <configuration> 
     <descriptorRefs> 
     <descriptorRef>jar-with-dependencies</descriptorRef> 
     </descriptorRefs> 
    </configuration> 
    <executions> 
     <execution> 
      <id>make-assembly</id> 
      <phase>install</phase> 
      <goals> 
       <goal>single</goal> 
     </goals> 
     </execution> 
    </executions> 
</plugin> 

をメインプロジェクトと場所が生成されたJARファイル内のlibsフォルダを作成します。 Webモジュールで

<plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-install-plugin</artifactId> 
     <version>2.5.2</version> 
     <executions> 
      <execution> 
      <id>install-external</id> 
      <phase>clean</phase> 
      <configuration> 
       <file>${basedir}/libs/your_service.jar</file> 
       <repositoryLayout>default</repositoryLayout> 
       <groupId>your_service</groupId> 
       <artifactId>your_service</artifactId> 
       <version>1.0</version> 
       <packaging>jar</packaging> 
       <generatePom>true</generatePom> 
      </configuration> 
      <goals> 
       <goal>install-file</goal> 
      </goals> 
      </execution> 
     </executions> 
    </plugin> 

そして

<!-- External lib --> 
<dependency> 
    <groupId>your_service</groupId> 
    <artifactId>your_service</artifactId> 
    <version>1.0</version> 
    <!-- <systemPath>${basedir}/libs/your_service.jar</systemPath> --> 
    <!-- <scope>system</scope> --> 
</dependency> 
関連する問題