2012-04-16 5 views
3

Javaアプリケーションの依存グラフを生成する必要がありますが、サブモジュールとプラグインでは使用できません。 pom.xmlサブモジュール依存グラフ

<modules> 
     <module>module1/pom1.xml</module> 
     <module>module2/pom2.xml/module> 
</modules> 

例Iはgraphvizのとdepgraphを試みたが、それは、プラグインの依存関係なく、サブモジュール、任意のアイデアを生成しますか?

ありがとうございます。

+0

グラフィカルにする必要がありますか?そうでなければ、 'mvn dependency:tree'は依存関係グラフを生成するための標準的な方法ですが、Maven 2の解像度を使用します。これを見て:http://maven.apache.org/plugins/maven-dependency-plugin/tree-mojo.html –

+0

おかげでミハル、ことは、私はサブモジュールだけではなく、瓶が欲しいということです。 – user1335838

+0

瓶ではありませんか?実際にはどういう意味ですか?タイプが 'jar'のすべての成果物を除外しますか? –

答えて

1

maven graph pluginを試すことができます。これは、推移深度1の依存関係グラフを描くことができます。 これは、サブモジュールではない追加のノイズ、依存関係が描画されないことを保証するものではありません。

もう1つの方法は、graphiz maven plginを使用して、ドットファイルを作成することです。

+0

本当に私のためには動作しません。私は 'dot'をPATHにインストールして準備しました。 – fatuhoku

2

Finaly私はその本のように、その設定にフィルタを適用するには、depgraphプラグインを使用して解決策を見つけた:

  <plugin> 
      <groupId>ch.elca.el4j.maven.plugins</groupId> 
      <artifactId>maven-depgraph-plugin</artifactId> 
      <version>3.0</version> 
      <configuration>   
       <groupFilter>com.stackoverflow.*</groupFilter>        
      </configuration> 
     </plugin> 

これはすべて私の場合には、「com.stackoverflow」で始まるすべての依存関係を描くを描画しますそれらはサブモジュールです。

希望します。

+0

私は手動で依存関係を調整しなければなりませんでした* javax.inject:inject:1.0 *から* javax.inject:javax.inject:1 *はプラグインのモジュールコアpomにありますが、実際にはうまく動作します。ありがとうございます – Brambo

+0

'mvn depgraph:depgraph'を実行したときに次のエラーが発生したと思います: ' [ERROR] ... javax.injectのアーティファクト記述子の読み込みに失敗しました:inject: jar:1.0:アーティファクトを転送できませんでした。javax.inject:inject:pom:1.0 from/to el4jRepositoryInternal(http://public-el4.elca-services.ch/el4j-protected/maven2repository/):承認されていません。 - > [ヘルプ1] ' どのようにポンを微調整しましたか? – fatuhoku

+0

それが含まれているので、@FatuHokuは '〜/ .m2 /リポジトリ/ CH/ELCA/el4j /モジュール/モジュールコア/ 3.1'下のファイル、モジュールコア3.1.pomを変更:' \t \t \t javax.inject \t \t \t javax.inject \t \t \t \t \t ' – Brambo

関連する問題