私はmavenとgradleが使用されているチームにおり、mavenユーザーがmavenを使用できるように機能するpomファイルを生成したいgradleプロジェクトがあります。Mavenプラグインを使用して生成POMのプラグインを管理します
私は次のように適切な依存関係を持つPOMを生成するものとして、これまでこの問題を解決しています
build.gradleの抜粋:
task createpom(dependsOn: 'build') << {
pom {
project {
groupId project.group
artifactId project.name
version project.version
}
}.writeTo("pom.xml")
}
build.finalizedBy(createpom)
をこれがポンポンにだけ依存関係を作成するに適していますが、 gradleのmavenプラグインAPIは、<build>
タグの内容の定義をサポートしていないようです。これは、正常なMavenビルドのために特定のプラグインをインポートする必要があります。生成されたPOMにビルドタグを後処理
- :要するに
は、私は、次のいずれかが必要です。私はファイルを直接操作することでそれを行うことができますが、そうしないことを好みます。
- POMを2つの部分に分割します.1つはgradle管理の依存関係のみ、もう1つは人間が管理するものだけです。残念なことに、私はファイル名によってpom依存関係を任意に指定する方法はありません。 pomのみのプロジェクトを追加したり、マルチモジュールビルドを使用したりするソリューションはありません。どちらも共有可能な親pomまたはマルチモジュールプロジェクトは必要ありません。
<import>my/arbitrary/path/buildstuff.xml</import>
に似たものを好むでしょう。本当に必要なのは、同じプロジェクト/ライフサイクルのPOMを2つに分けて接着することだけです。
私がこれまでに見つけたもの以外にもこれを達成する良い方法がありますか?