「Gradle 7.0」公開、Java 16をサポート

 ビルド自動化ツールのGradle開発チームは4月10日、最新のメジャーリリースとなる「Gradle 7.0」公開を発表した。Java 16のサポート、File-system watchingがデフォルトで有効になるなどの強化が加わった。

 GradleはJava仮想マシン上で動作するビルド管理ツールで、コンパイルからパッケージ、Webサイトの公開と開発ライフサイクルをサポートする。Java、Scala、Android、Kotlin、C/C++、Groovyなどの言語をサポートし、Eclipse、IntelliJ、Jenkinsといった開発ツールや継続的インテグレーション(CI)サーバーと統合できる。Gradle 7.0は2019年に公開されたバージョン6系に続くメジャーリリース。

 バージョン6.5で導入したFile-system watchingがデフォルトで有効になった。ビルド間のインメモリのフィアルシステムについて学習することで、各ビルドでのファイルシステムから読み込みをスキップするもので、ディスクI/Oの量を削減でき、ビルド時間の短縮につながるという。性能ではこのほか、Androidプロジェクトでのインクリメンタルな変更の性能も改善する強化が加わった。Santa Tracker AndroidでassmbleDebug(ABI変更なし)ではバージョン6.8.3と比較して12%高速化するという。

 Java 16をサポートした。以前のバージョンでは、Java 16でGradleを動かすとエラーとなったが、最新版ではJava 16上で動かすことができ、JVMプロジェクトの構築もサポートする。Apple Siliconをネイティブでサポートした。旧バージョンでは制限があったが、最新版ではネイティブARM JDKでリッチコンソールやFile-system watchingなども無効化されずにフル対応する。依存性のバージョン管理としてversion catalogsを実験導入した。ビルドの作者はグループ、アーティファクト、バージョンなど依存性の管理を一元的にできるようにするもので、型安全な状態で依存性を宣言できる。なお、依存性解決プロセスには影響を与えないため、解決したバージョンとversion catalogsで宣言されているものが異なる可能性が出てくるとしている。

 このほかにも細かな強化が加わっている。

Gradle
https://gradle.org