2011-12-13 14 views
1

私は1つの親の下に4つの子pomを持っています。子供の一人は、他の3つのモジュールジャーを含むジップを作ることです。これは動作しますが、それぞれの依存関係を取得しません。Mavenアセンブリプラグイン - アセンブリに他の子依存関係を含める

モジュールビルドのpom.xml:

...  
    <plugin> 
     <artifactId>maven-assembly-plugin</artifactId>    
     <inherited>true</inherited>    
     <configuration> 
      <descriptors> 
      <descriptor>desc.xml</descriptor> 
      </descriptors> 
     </configuration> 
    </plugin> 
... 

desc.xml:

... 

     <moduleSets> 
      <moduleSet> 
       <binaries> 
        <unpack>false</unpack> 
        <dependencySets> 
         <dependencySet> 
          <unpack>false</unpack> 
          <scope>runtime</scope>     
          <outputDirectory>lib</outputDirectory> 
         </dependencySet> 
        </dependencySets> 
       </binaries> 
      </moduleSet> 
     </moduleSets> 
    ... 

結果 'のlib' フォルダが作成されていません。

ご協力いただければ幸いです。

+0

を助けることを願っています

...私は、マルチモジュールプロジェクトからそれを使用することがなかった、と私はユースOBというモジュールといくつかのトリッキーな配慮があることを知っていますあなたがもっと助けが必要な場合は答え、正しいものを記入してください。現時点では、この質問はまだ未回答のリストにありますが、コメントなしですでに2つの回答があるので、あなたは現時点でこれ以上取得できません。 – Jan

答えて

1

他の3つのモジュールを、この4番目のモジュールの依存関係として、親のmodulesセクションの隣に指定しましたか?そうした場合

、それはあなたがこれを行う場合でも動作するはずです:

<assembly> 
<id>final</id> 
    <formats> 
    <format>jar</format> 
    </formats> 
    <includeBaseDirectory>false</includeBaseDirectory> 
    <dependencySets> 
    <dependencySet> 
     <unpack>false</unpack> 
     <scope>runtime</scope>     
     <outputDirectory>lib</outputDirectory> 
    </dependencySet> 
    </dependencySets> 
</assembly> 
1

は、多分それは少し遅れだが、どんなに:)。 親プロジェクトでアセンブリを移動する必要がありますが、それは実際の問題ではありません。

プラグインのバージョンの使用:ここで

鉱山を、ウィッヒは完全に機能している(ただし、フランス語で、私を許し;))

<?xml version="1.0" encoding="UTF-8"?> 
<assembly 
    xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd"> 
    <!-- Ce chemin est lié au plugin maven-jar et à la génération du manifest 
     : à manipuler avec précautions --> 
    <id>lib</id> 
    <formats> 
     <format>zip</format> 
    </formats> 
    <!-- Supprimer la création d'un répertoire dans l'archive au nom du projet --> 
    <includeBaseDirectory>false</includeBaseDirectory> 
    <dependencySets> 
     <dependencySet> 
      <outputDirectory>/</outputDirectory> 
      <unpack>false</unpack> 
      <scope>runtime</scope> 
     </dependencySet> 
    </dependencySets> 
</assembly> 

これは、内蔵されたプラグインの機能(依存関係を取得するため)。しかし、ソーラーウィンズこんにちは、上のコメントしてください...

関連する問題