2012-03-23 10 views
0

私はいくつかの子モジュールを持つ親POMを持っています。これらのうちの1つについては、ビルド中にantrunセクションを追加しました - これは単に文を出力します。Maven 3は親子モジュールでantrun問題を作成します

- (8、このモジュールは(#5)2及び3に依存しますので、親は8人の子供1を持っている)antrunセクションがフォームであるこの子モジュールは、全体的なセット内の他のモジュールに依存します

<build>... 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-antrun-plugin</artifactId> 
      <version>1.1</version> 
      <executions> 
       <execution> 
        <phase>validate</phase> 
        <goals> 
         <goal>run</goal> 
        </goals> 
        <configuration> 
         <tasks> 
          <echo>******************* Running generate </echo> 
        </tasks> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 

    </plugins> 
</build> 

親モジュールの下でアクションを実行すると(たとえば、検証やインストールなど)、これらは正常に動作し、このantrunタスクを保持する子(#5)に対してechoステートメントが実行されます。私は子供のモジュールに移動し、そこから検証MVNをしようとした場合

はしかし、私は(伝説の)

could not resolve dependencies for project... 

失敗を取得します。しかし、すべてのモジュールはローカルリポジトリに存在し、最新のものです。そして、mvnをもう一度インストールするというこの問題に対する通常の修正は、それを修正しません。

他の誰かが知っていない限り(地獄が)狂っていない限り、それは私のバグのように見えます。

クリス

+0

このプラグインを一時的にコメントアウトすると、依存関係のエラーが消えてしまいます。そうでない場合は、どのような依存関係を見つけることができませんか? –

+0

はい、子のpomのエントリを削除しても問題ありません。 – StripLight

+0

どのような依存関係については文句を言いますか?そこに手がかりがあると願って。 –

答えて

0

OK、私のせいです。親プロジェクトにPOMを追加しました。私はそこに共通の依存関係を置くことを望んでいました。トップレベルのPOMをレスポ、配布物などで維持することを望んでいました。そこに見つかりました。パズルは、親からビルドを実行するときにこれがまだ機能していた理由です。

とにかくそれは固定されています - 私は私の単一の親POMにdepのものを折りたたんで、すべてがうまくいきます。フィードバックありがとうございました。

0

あなたはMavenの中にサブモジュールを呼び出す場合は、特定の方法でそれをしなければなりません。

+-- root (pom.xml) 
     +-- mod-child-1 
     +-- mod-child-2 
     +-- mod-child-3 
     +-- mod-child-4 
     .... 

あなたが例えばMOD-子-3のためのルートを経由してMVNをインストールしない最初の必要があることをやりたい場合は...その後、あなたのマルチモジュールのルートの場所から次の操作を行うことができますビルド:

mvn -pl mod-child-3 package 
+0

ありがとう、しかし、私はあなたの点をかなり理解しています。モジュールの構造はフラットで、各モジュールは同じフォルダレベル(上記のようなものではない)に置かれます。これはコンポーネントであり、**独自の** gitリポジトリにあるので、絶対に必要です。彼らは入れ子にすることはできません。 – StripLight

+0

私がgitを知っている限り、 "スーパーモジュール"(ルート)を作成してサブモジュールを追加することができます(http://book.git-scm.com/5_submodules.html)。 – khmarbaise

関連する問題