[解決済み] mvn dependency:treeを実行すると、Mavenが兄弟モジュールを認識しない
質問
マルチモジュールの Maven プロジェクトをセットアップしようとしていますが、モジュール間の依存関係がどうやら正しくセットアップされていないようです。
私は持っています。
<modules>
<module>commons</module>
<module>storage</module>
</modules>
を親POM(パッケージングタイプのPOMを持つ)で作成します。
を作成し、サブディレクトリ
commons/
と
storage/
で、同じ名前の JAR pom を定義しています。
ストレージはCommonsに依存します。
メイン(マスター)ディレクトリで
mvn dependency:tree
を実行して見てください。
[INFO] Building system
[INFO] task-segment: [dependency:tree]
[INFO] ------------------------------------------------------------------------
[INFO] [dependency:tree {execution: default-cli}]
[INFO] domain:system:pom:1.0-SNAPSHOT
[INFO] \- junit:junit:jar:3.8.1:test
[INFO] ------------------------------------------------------------------------
[INFO] Building commons
[INFO] task-segment: [dependency:tree]
[INFO] ------------------------------------------------------------------------
[INFO] [dependency:tree {execution: default-cli}]
...correct tree...
[INFO] ------------------------------------------------------------------------
[INFO] Building storage
[INFO] task-segment: [dependency:tree]
[INFO] ------------------------------------------------------------------------
Downloading: http://my.repo/artifactory/repo/domain/commons/1.0-SNAPSHOT/commons-1.0-SNAPSHOT.jar
[INFO] Unable to find resource 'domain:commons:jar:1.0-SNAPSHOT' in repository my.repo (http://my.repo/artifactory/repo)
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failed to resolve artifact.
Missing:
----------
1) domain:commons:jar:1.0-SNAPSHOT
リアクターは依存関係ツリーを正常に処理したため、明らかにそれを見たにもかかわらず、なぜ "commons" への依存は失敗するのでしょうか? それは間違いなくそこにあるので、それを見つけるためにネットに行くべきではありません...。
ストレージのためのpomです。
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<packaging>jar</packaging>
<parent>
<artifactId>system</artifactId>
<groupId>domain</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<groupId>domain</groupId>
<artifactId>storage</artifactId>
<name>storage</name>
<url>http://maven.apache.org</url>
<dependencies>
<!-- module dependencies -->
<dependency>
<groupId>domain</groupId>
<artifactId>commons</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<!-- other dependencies -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
どんな提案でもありがとうございます
(編集)
明確にするために、私がここで探しているものはこれです。 X に依存するモジュール Y を構築するために、モジュール X をインストールする必要がないようにしたいのですが、両方とも同じ親 POM から参照されるモジュールであるとします。 これは、同じソースツリーに2つのものがある場合、ビルドを続けるために中間生成物をインストールする必要がないという、直感的に理解できるものです。 私の考え方がここで何らかの意味を持つことを願っています...。
どのように解決するのですか?
この問題は、依存関係を指定するときに、Maven は少なくともローカル リポジトリからパッケージ化され利用可能な jar (またはその他) としてそれを持つことを期待していることだと思います。私が思うに、もしあなたが
mvn install
を実行すれば、すべてがうまくいくと確信しています。
関連
-
アノテーション「@Retention」の役割
-
Java appears タイプEを囲むインスタンスがアクセスできない。
-
API の戻り値を処理するために ResponseEntity を使用する
-
eclipse 実行 Java、エラー: 選択を起動できず、レシーバーもありません。
-
Web Project JavaでPropertiesファイルを読み込むと、「指定されたファイルがシステムで見つかりません」というソリューションが表示されます。
-
org.xml.sax.SAXParseExceptionのエラー解決方法
-
アクセス制限の解決方法: ---- in Java
-
WeChat小プログラム Bluetooth通信 Bluetoothモジュールデモ
-
[解決済み】Maven モジュール + 特定の単一モジュールのビルド
-
[解決済み] Maven: ライブラリによって追加された依存関係をオーバーライドする方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Eclipse問題 アクセス制限。タイプ 'SunJCE' が API でないことを解決し、/jdk ディレクトリにある /jre と jre の違いについて理解を深める。
-
executeQuery()でデータ操作文が発行できない。解決方法
-
java.sql.SQLException: executeQuery()でデータ操作文を発行できません。
-
ブートレイヤーの初期化中にエラーが発生しました java.lang.module.FindException: モジュールが見つかりません
-
-bash: java: コマンドが見つからない 解決方法
-
ジャバアレイ
-
XXX型を囲むインスタンスがJavaでアクセスできない
-
Java基礎編 - オブジェクト指向
-
git pull appears現在のブランチに対するトラッキング情報がありません。
-
Java の double データ型における 0.0 と -0.0 の問題