次のようなマルチモジュールプロジェクトで分類子を使用しようとしています
ルート プロジェクト
--ejb
--jar
--servlet
--ear
ejb プロジェクトは jar プロジェクトに依存します war プロジェクトは ejb プロジェクトに依存し、推移的な方法で jar プロジェクトに依存します
残念ながら、私のサーブレット プロジェクトでは、jar プロジェクトの分類子が解決されません。
プロファイルも定義しました
<profile>
<id>dev</id>
<properties>
<maven.deployment.suffix>dev</maven.deployment.suffix>
<envClassifier>dev</envClassifier>
<exploded>true</exploded>
...
</properties>
</profile>
このプロファイルとアーティファクトを分類してプロジェクトをパッケージ化しようとすると、常に次のエラーが発生します。
mvn -P dev clean install
...
[エラー] プロジェクト サーブレットでゴールを実行できませんでした: > > プロジェクト root.project.servlets:servlet:war:1.0 の依存関係を解決できませんでした: 成果物 root.project.projects:logging:jar:${ を転送できませんでしたenv Classifier}:1.0 from/to nexus ( http://.../nexus/content/groups/public ): > IllegalArgumentException: インデックス 102 のパスに不正な文字: .../nexus> /content/groups/public /root/project/projects/logging/1.0/logging-1.0-${envClassifier}.jar -> [ヘルプ 1]
[エラー]
[エラー] エラーの完全なスタック トレースを表示するには、Maven を - で再実行します。 e スイッチ。
[エラー] -X スイッチを使用して Maven を再実行し、完全なデバッグ ログを有効にします。
[エラー] ...
サンプルをbitbucketにアップロードしました
サーブレット プロジェクトで次のコマンドを実行しようとしました
$ mvn -P dev help:effective-pom
分類子がうまく解決されていることがわかりました。ただし、推移的な依存関係には適用されません。
唯一の回避策は、maven の起動時にプロパティを次のように注入することです。-DenvClassifier=dev
最後に、jira でいくつかの問題を確認しましたが、解決されていません。この問題を解決するにはどうすればよいですか? マルチモジュールプロジェクトで分類子を使用してmavenを使用するのは、地球上で私だけではないと思います...