0

次のことを行う Maven プラグインを作成しようとしています: モジュールのすべての依存関係を取得し、その推移的な依存関係が現在のモジュールの兄弟モジュールに推移的な依存関係を持っているかどうかを調べます。

私の考えは次のとおりです。

  • モジュールの親 (POM のみの親) を取得してから、そのモジュールをすべて取得して、現在のモジュールの兄弟を見つけます。
  • モジュールの推移的な依存関係を取得します (ただし、グループ ID のみ)。
  • 推移的な依存関係のそれぞれについて、その推移的な依存関係を取得し、それらのいずれかが兄弟モジュールの 1 つであるかどうかを調べます。

私は Maven 2 スタイルでやってみましたが、今は Aether で終わりました。しかし、Aether で自分のやりたいことができるかどうかはわかりません。

現在、私は POM のみの親 (Aether ではなく MavenProject を使用) を取得でき、推移的な依存関係を取得し、それらをフィルタリングして、グループ ID を持つアーティファクトのみを保持できます。Aether で Maven FilterArtifacts に相当するものが見つかりませんでした。

質問は次のとおりです。目標を達成する方法についての私の考えは正しいですか? エーテルだけでできますか?はいの場合、どうすればよいですか?または、Maven 2 と Aether を組み合わせて使用​​する必要がありますか? (ちょっとやってみたけどSNAPSHOT版とタイムスタンプSNAPSHOT版の違いがちょっと面倒)

とにかく、どんな助けでも大歓迎です!

4

1 に答える 1

0

jcabi-aetherライブラリ (私は開発者の 1 人です) を使用できます。これは、必要なことを行うのに役立ちます。

  1. からモジュールのリストを取得しますMavenProject
  2. 依存関係を取得する
  3. それらを1つずつループし、次を使用して解決しますcom.jcabi.aether.Aether

Maven 3 で問題なく動作するはずです

于 2012-08-28T11:38:16.140 に答える