2

マルチモジュールの Maven ビルドがあり、最後にビルドする特定のモジュール (プロジェクト A と呼びましょう) が 1 つ必要です。これは、ネイティブ コードを保持するモジュール (project-B と呼びましょう) に依存します。これは、dll にコンパイルされ、Maven のトリックを使用して zip ファイルとして Maven リポジトリにインストールされます。ネイティブ コードは Java jar ではないため、直接依存しないため、Maven Dependency Plugin を使用して zip ファイルを解凍し、ネイティブ dll をビルド ディレクトリに配置します。建物の順序を除いて、すべてが正常に機能しています。親のタグで逆に宣言されているにもかかわらず、最初の project-A をビルドします。project-A が project-B に依存していることを Maven に伝えたいと思います。project-B を依存関係として追加しようとしましたが、jar をビルドしないため、ERROR がスローされます。これもハッキーに思えました。どんな助けでも大歓迎です。

4

2 に答える 2

5

プロジェクト A でプロジェクト B への依存関係を宣言するだけで、正常に動作します。プロジェクト B が Java プロジェクトではなくネイティブであるかどうかは問題ではありません。パッケージングをタイプとして考慮して、依存関係を正しく宣言していることを確認してください..(これはおそらくpomそうです

<dependency>
  <groupId>...</groupId>
  <artifactId>B</artifactId>
  <version>...</version>
  <type>pom</type>
</dependency>

プロジェクトAで)

于 2012-10-19T04:21:45.283 に答える
1

The order in which you specify the modules in the parent Pom is also relevant. Maven actually builds in this order unless it has to build a module out of sequence due to direct dependencies.

于 2012-10-20T10:08:00.743 に答える