「 Gradle dependencyManagement 」で説明されている問題に遭遇しました。「POM pom-default.xml を初期化できません: プロジェクトの POM を検証できませんでした」というのは、ディレクトリ構造が次のとおりであるためです。
事業 組み立て mbean 共通 webapps/e2am
したがって、次のような settings.gradle ファイルがあります。
rootProject.name = 'e2am-parent' include "mbean-common", "webapps/e2am", "assembly"
そして、デフォルトで「gradle clean install」を実行したときにgradleによって生成されたpom-default.xmlは、「webapps/e2am」のartifactIdを作成します。
<groupId>com.e2open.platform</groupId>
<artifactId>webapps/e2am</artifactId>
<version>9.0-SNAPSHOT</version>
「/」は明らかに許可されていません(ファイルを削除して mvn help:effective-pom を実行すると、「/」があると鳴き、「/」を削除すると成功するため)
artifactId に 'webapps/e2am' を使用しないように gradle に指示するにはどうすればよいですか? つまり、デフォルトの artifactId 名を上書きするにはどうすればよいですか? 「gradle override artifactId」をグーグルで検索しましたが、正しいレシピが見つからないようです...
私はJavaプラグインとMavenプラグインを使用しているので、gradleは「クリーンインストール」が何をすべきかを「知っている」ので、この時点ではアーカイブにアップロードしていないので、アーカイブへのアップロードに関連することがわかった解決策は無関係。
Maven pom ファイルでは groupId、ArtifactID、および version を指定できるのに、build.gradle では、artifactId 名を制御できず、グループとバージョンだけを制御できるのは奇妙に思えます。