0
0

GradleのContainuous Buildsを使い、タスクの自動実行を実現する

Last updated at Posted at 2024-03-27

Containuous Buildを使うと、タスクの自動的な再起動が可能

普段実行しているGradleコマンドに-tまたは--continuousを付ける事で、ファイルが変更された時のタスクの再実行が可能です。

実現したかったこと

最近は以下の記事のようなGradleを用いたJARライブラリのビルド環境を整えているのですが、

手元の環境でJARライブラリを開発する時に、ローカルMavenリポジトリ.m2への反映の自動実行としてContainuous Buildが上手く利用できそうでした。

動作環境

Windows 11
Gradle 8.6
openjdk 20.0.2

試してみる

  • 試しにpublishToMavenLocalを実行します
    • こちらはMaven Publish PluginのローカルMavenリポジトリへの反映のコマンドです
  • maven-publishプラグインを利用し、以下のpublishの設定を記載します
    • 詳細はこちらpublishToMavenLocalの紹介記事の設定を参照ください
build.gradle
plugins {
    id 'java-library'
    id 'maven-publish'
}

...

publishing {
    publications {
        maven(MavenPublication) {
            groupId = 'com.sample.yoyoyo-pg'
            artifactId = 'jarSample'
            version = '1.0.0-SNAPSHOT'
            from components.java
        }
    }
}
  • ./gradlew publishToMavenLocal -tを実行
  • 最初の実行後、IDLE状態となります
PS C:\Users\yoyoyo-pg\git\gradle-sample> ./gradlew publishToMavenLocal -t
Starting a Gradle Daemon, 9 incompatible and 4 stopped Daemons could not be reused, use --status for details

BUILD SUCCESSFUL in 4s
5 actionable tasks: 3 executed, 2 up-to-date

Waiting for changes to input files... (ctrl-d then enter to exit)
<-------------> 0% WAITING
> IDLE

  • 最初のpublishが成功している事が分かります

first-publish.png

  • 適当なsrc/main配下のJavaファイルを変更すると、変更を検知して再度タスクが走ります
modified: C:\Users\yoyoyo-pg\git\gradle-sample\lib\src\main\java\gradle\sample\Library.java
Change detected, executing build...


BUILD SUCCESSFUL in 650ms
5 actionable tasks: 5 executed

Waiting for changes to input files... (ctrl-d then enter to exit)
<=============> 100% EXECUTING [10m 13s]
> IDLE

  • ファイルが更新されている事が分かります

second-publish.png

参考文献

Gradle User Manual - Continuous Builds

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0