Gradle でビルド プロセスを作成しており、Java コードを使用するプラグインを提供したいと考えています。Gradleプラグインのドキュメントに は、これが可能であると記載されています。
実装が最終的にバイトコードとしてコンパイルされれば、任意の言語でカスタム プラグインを実装できます。ここの例では、Groovy を実装言語として使用します。必要に応じて、代わりに Java または Scala を使用できます。
しかし、数時間のグーグル検索と読書の後、Java で Gradle カスタム プラグインを作成する方法についての説明をまだ見つけていません。次のようなディレクトリにコードを作成できるようです。
<rootProjectDir>/buildSrc/src/main/java/
MyGradlePlugin.java
MyGradleTasks.java
しかし、問題は次のようになります。
- Gradle と互換性があるように Java でプラグイン クラスとタスクを実装する方法は?
ビルドで使用できるように、Gradle に Java クラスとタスクを認識させるにはどうすればよいですか?
Groovy の場合と同じように、プラグイン クラスを参照できますか?
src/main/resources/META-INF/gradle-plugins/myjavaplugin.properties
implementation-class=org.me.MyGradlePlugin
project.javaexec
またはを使用して Java コードを呼び出すことができることはわかっJavaExec
ていますが、ビルド プロセスの移植性が低下するのではないかと懸念しています。