概要: Gradle 6系・7系はすでにサポート終了(EOL)ですが、既存プロジェクトのメンテナンスや移行判断のために、最終安定版とJava実行環境の互換性を正確に把握しておくことが重要です。本記事では、Gradle 6系・7系の最終安定版、Javaバージョンごとの実行可否、Wrapperを使ったバージョン管理方法、移行時の注意点を解説します。
Gradle 6系・7系はなぜ今注目されるのか
すでにサポート終了を迎えた旧世代シリーズ
Gradle 6系・7系は、すでにサポートが終了した旧世代のバージョンです。Gradle 6系はセキュリティ修正が2023年2月10日に終了し、7系もEOL(End of Life)を迎えています。新規プロジェクトで採用すべきバージョンではありません。
しかし、既存プロジェクトのメンテナンスや移行判断では、これらのバージョン情報が不可欠です。特に古いプラグインや特定のJavaバージョンに依存する環境では、6系・7系の正確な仕様理解が求められます。
既存プロジェクトの更新先として確認が必要
多くのJavaプロジェクトでは、長期間メンテナンスされていないビルド環境が残っています。「Gradleのバージョンを上げたいが、どこまで上げられるか分からない」という悩みは、この6系・7系の互換性理解によって解決できます。
特にJava 17 LTSへの移行を検討するプロジェクトでは、Gradle 6系からの脱却が必要です。6系のままではJava 17環境でGradle本体を実行できないため、移行先の検討材料として6系・7系の情報が重要になります。
Java実行環境との互換性が混乱の原因
Gradle 6系・7系に関する情報が注目されるのは、「JavaのバージョンとGradleのバージョンは別物」という理解が広がっていないためです。Java 17が導入されても、Gradle側が対応していなければビルドは失敗します。
Gradle 6系はJava 15まで、Gradle 7系はJava 19までしかGradle本体の実行環境として対応していません。この境界線を正確に把握することが、既存プロジェクトの安定稼働と移行計画の第一歩になります。
要点:Gradle 6系・7系はEOL済みの旧世代であり、新規導入ではなく既存プロジェクトのメンテナンス・移行判断のために理解が必要です。
—
Gradle 6系の最終安定版とJava実行環境の上限
最終安定版は6.9.4
Gradle 6系の最終安定版は6.9.4で、2023年2月21日にリリースされました(出典:Gradle「Gradle 6.9.4 Release Notes」)。6.9.4は6.9系列の最終パッチリリースであり、6.9本体は2021年5月5日に公開されています。
Gradle 6系のサポート状況は以下の通りです。
| 項目 | 内容 |
|---|---|
| シリーズ初版 | 6.0.0(2019年11月8日) |
| 最終安定版 | 6.9.4(2023年2月21日) |
| バグ修正終了 | 2021年4月9日 |
| セキュリティ修正終了 | 2023年2月10日 |
| サポート状況 | 終了(EOL) |
Gradle 6系を実行できるJavaは最大15まで
Gradle公式Compatibility Matrixによると、Gradle 6系でGradle本体を実行できるJavaバージョンは最大Java 15です。6.9系であってもJava 16やJava 17でGradleを実行することはできません(出典:Gradle「Compatibility Matrix」)。
Gradle 6系が実行可能なJavaバージョンの範囲を整理します。
| Javaバージョン | Gradle 6系での実行可否 |
|---|---|
| Java 8〜12 | 実行可能 |
| Java 13 | 6.0以上で実行可能 |
| Java 14 | 6.3以上で実行可能 |
| Java 15 | 6.7以上で実行可能 |
| Java 16 | 実行不可 |
| Java 17 | 実行不可 |
コンパイル対象と実行環境は別物
Gradle 6系でJava 16以降を「コンパイル対象」にすることと、「Gradleを実行するJDK」として使用することは別問題です。Java Toolchainsを使用すれば、Gradle自体はJava 15以前で動かしつつ、コンパイルには別のJDKを利用できる可能性があります。
ただし、Java Toolchainsの利用にはプラグインや設定の互換性も絡むため、個別プロジェクトでの検証が必要です。Gradle 6系の実行環境がJava 15までという制約は、移行判断の重要な基準になります。
要点:Gradle 6系の最終安定版は6.9.4。Gradle本体の実行環境はJava 15までで、Java 16以降では実行できません。
—
Gradle 7系の最終安定版とJava 17以降の対応状況
最終安定版は7.6.6
Gradle 7系の最終安定版は7.6.6で、2025年7月3日にリリースされました(出典:Gradle「Gradle 7.6.4 Release Notes」および後続リリース情報)。7.6.4は2024年2月5日に公開されており、7.6系列は長期にわたりパッチが提供されていました。
Gradle 7系の基本情報は以下の通りです。
| 項目 | 内容 |
|---|---|
| シリーズ初版 | 7.0.0(2021年4月9日) |
| 最終安定版 | 7.6.6(2025年7月3日) |
| 著名な安定版 | 7.6(2022年11月25日)、7.6.4(2024年2月5日) |
| サポート状況 | 終了(EOL) |
Java 17対応はGradle 7.3から
Gradle 7系でJava 17を実行環境として利用できるのはGradle 7.3以降です(出典:Gradle「Compatibility Matrix」)。7.0〜7.2ではJava 17でGradle本体を実行できません。この境界は、Java 17 LTS移行を検討する際に特に重要です。
Gradle 7系が実行可能なJavaバージョンを整理します。
| Javaバージョン | Gradle 7系での実行可否 |
|---|---|
| Java 8〜15 | 実行可能 |
| Java 16 | 7.0以上で実行可能 |
| Java 17 | 7.3以上で実行可能 |
| Java 18 | 7.5以上で実行可能 |
| Java 19 | 7.6以上で実行可能 |
| Java 20以降 | 実行不可(Gradle 8.3以上が必要) |
Java 20以降はGradle 8系への移行が必要
Gradle 7系でGradle本体を実行できる最大JavaバージョンはJava 19です。Java 20でGradleを実行するにはGradle 8.3以上、Java 21ではGradle 8.5以上が必要になります(出典:Gradle「Compatibility Matrix」)。
現在の最新世代はGradle 9系であり、Java 26対応にはGradle 9.4.0以上が必要です。Gradle 7系はあくまで既存プロジェクトの延命や移行途中の選択肢であり、新規採用するべきではありません。
要点:Gradle 7系の最終安定版は7.6.6。Java 17で実行するには7.3以上が必要で、Java 20以降はGradle 8系への移行が必須です。
—
Gradle Wrapperでバージョンを確認・変更する方法
まず現在のGradleバージョンを確認する
既存プロジェクトのGradleバージョンを確認するには、gradle-wrapper.propertiesファイルを確認するのが確実です。このファイルはプロジェクト内のgradle/wrapper/ディレクトリにあり、distributionUrlに使用するGradleバージョンが記載されています(出典:Gradle「Gradle Wrapper Basics」)。
確認手順は以下の通りです。
gradlewまたはgradlew.batがプロジェクトに存在するか確認するgradle/wrapper/gradle-wrapper.propertiesを開くdistributionUrlに記載されたバージョン番号を確認する
Gradle Wrapperが存在する場合、システムにインストールしたGradleではなく、Wrapperを使ってビルドするのが公式推奨です。
Wrapperコマンドでバージョンを変更する
Gradle Wrapperのバージョン変更は、wrapperタスクを使用します。既存のGradle環境から以下のコマンドを実行することで、指定したバージョンに更新できます。
6系・7系への変更例は以下の通りです。
- 7系に更新する場合:
./gradlew wrapper --gradle-version=7.6.6 - 6系に更新する場合:
./gradlew wrapper --gradle-version=6.9.4
このコマンドにより、gradle-wrapper.propertiesのdistributionUrlとgradle-wrapper.jarが更新されます。
バージョン変更時の注意点
Gradleのバージョンを変更する際は、プラグインやビルドスクリプトの互換性も併せて確認する必要があります。Gradle本体のバージョンだけを変更しても、使用しているプラグインが新しいGradleに対応していなければビルドが失敗します。
また、Java実行環境も確認が必要です。Gradle 6系はJava 15まで、7.0〜7.2はJava 16までしか実行環境として対応していません。Java 17環境でGradle 6系を実行しようとすると起動自体に失敗するため、バージョン変更前に互換性表の確認が欠かせません。
要点:バージョン確認はgradle-wrapper.properties、変更はwrapperタスクで行います。変更時はプラグイン互換性とJava実行環境の確認が必須です。
—
Gradle 6系・7系からの移行判断と注意点
新規プロジェクトでは6系・7系を選ばない
Gradle 6系・7系はどちらもサポート終了(EOL)のため、新規プロジェクトで採用すべきではありません。セキュリティ修正が提供されないため、脆弱性対応が求められる環境では移行が必須です。
移行先の判断基準は、使用するJavaバージョンによって決まります。
| 使用Javaバージョン | 必要なGradleバージョン |
|---|---|
| Java 17 | Gradle 7.3以上 |
| Java 20 | Gradle 8.3以上 |
| Java 21 | Gradle 8.5以上 |
| Java 26 | Gradle 9.4.0以上 |
現在の最新安定版はGradle 9.6.1であり、Java 17〜26を実行環境としてサポートしています(出典:Gradle「Compatibility Matrix」)。
HomebrewのGradle 7系は非推奨
macOSでHomebrewを使用している場合、gradle@7は非推奨(deprecated)であり、無効化日が2026年7月31日に設定されていました。記事作成時点では取得できない可能性が高いため、Homebrew経由でのGradle 7系インストールは避けるべきです。
Gradle本体は無料のオープンソースツールです。企業向けのDevelocityとは区別して理解する必要があります。インストール方法に依存せず、プロジェクトごとにGradle Wrapperでバージョンを固定するのが公式推奨です。
移行時はJava Toolchainsの活用も検討
Gradleの移行がすぐにできない場合、Java Toolchainsの利用が有効です。Java Toolchainsを使用すると、Gradleを実行するJDKと、プロジェクトのコンパイル・テストに使用するJDKを分離できます(出典:Gradle「Gradle User Manual」)。
これにより、Gradle本体は古いバージョンのままでも、コンパイル対象のJavaバージョンを柔軟に指定できる可能性があります。ただし、Gradle本体の実行環境としてのJavaバージョン制約は変わらないため、移行計画の延命策として位置づけるのが適切です。最終的には、サポートが継続しているGradle 9系への移行を目指すべきです。
要点:EOL済みの6系・7系は新規採用せず、Javaバージョンに応じたGradle 8系・9系への移行を推進。移行が難しい場合はJava Toolchainsで段階的に対応します。
“`
まとめ
よくある質問
Q: Gradle 6系の最終安定版はどれですか?
A: Gradle 6系の最終安定版は6.9.4です。2023年2月21日にリリースされ、Gradle 6.xのバグ修正は2021年4月9日、セキュリティ修正は2023年2月10日に終了しています。
Q: Java 17でGradleを実行するにはどのバージョンが必要ですか?
A: Java 17でGradle本体を実行するにはGradle 7.3以上が必要です。Gradle 6系やGradle 7.0〜7.2ではJava 17でGradleを実行できません。
Q: Gradle 7系の最終安定版はどれですか?
A: Gradle 7系の最終安定版は7.6.6です。2025年7月3日にリリースされ、Gradle 7.xのサポートは終了しています。
Q: Gradle 6系で実行できるJavaの上限はどのバージョンですか?
A: Gradle 6系でGradle本体を実行できるJavaの上限はJava 15です。Gradle 6.9系でもJava 16でGradleを実行することはできません。
Q: Gradle Wrapperでバージョンを変更する方法は?
A: Gradle Wrapperを使用している場合、`./gradlew wrapper –gradle-version=7.6.6`のようにコマンドを実行すると、指定したバージョンに更新できます。また、`gradle-wrapper.properties`の`distributionUrl`を変更する方法もあります。
