setup-java v6のtemurinとMavenキャッシュ
特定のバージョンの Java を使用して GitHub Actions ワークフローを設定します。
ひと目でわかる
- これは何?
- actions/setup-javaのREADMEが示すJDK配布インストール、java-version-file、cache-jdk、Maven GPG、Node24 runner、MITライセンスを整理する。
- 誰に向いている?
- actions/setup-javaはGitHub ActionsでTemurin等のJDKをPATHとJAVA_HOMEへ入れ、Maven/Gradle/sbt依存をキャッシュしたいJava/Scala/Kotlinプロジェクト向きです。READMEはv1からv4を非推奨とし、actions/setup-java@v6を最新安定版と述べます。
- 商用利用できる?
- できます。MIT は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
- 今もメンテナンスされている?
- されています。最後のコミットは 5 日前です。
- 何の言語で書かれている?
- 主に TypeScript です(GitHub の言語統計による)。
回答はプロジェクトの GitHub データ(最終同期:2026年9月15日)と当サイトの分析に基づくもので、法的助言ではありません。
オープンソース詳細解説
JDKインストールとJAVA_HOME設定
setup-javaはREADME称、GitHub Actions workflow向けにJavaをセットアップします。What it does節は対応配布からJDKをダウンロード/インストール、PATH追加、JAVA_HOME設定、Maven/Gradle/sbt依存キャッシュ、Maven settings.xml/toolchains/GPG、problem matchers、JDKインストールキャッシュ、checksum/署名検証を列挙しています。
先頭のUsage例はactions/checkout@v7の後、actions/setup-java@v6でdistribution: temurin、java-version: '25'、run: java --versionです。actions/setup-javaはMITライセンス、basic-validation/e2e workflowsバッジがREADME上部にあります。
actions/setup-javaの「JDKインストールとJAVA_HOME設定」節のREADME記述は、コマンド・ファイル・版をセットでメモし、記載外は書きません。
actions/setup-javaでは「JDKインストールとJAVA_HOME設定」だけを切り出し、他章と混ぜず条件を残します。
actions/setup-java README「JDKインストールとJAVA_HOME設定」の固有名詞は該当ファイルを開いてから写し、推測しません。
actions/setup-java採用メモ:JDKインストールとJAVA_HOME設定節でREADMEに無い数値や互換保証は書かず、記載コマンドとファイルだけを残します。
JDKインストールとJAVA_HOME設定補足1: README一次資料の命令・設定名・版を検証ログ1行目に転記し、未記載挙動は未確認欄へ分離する。
JDKインストールとJAVA_HOME設定補足2: README一次資料の命令・設定名・版を検証ログ2行目に転記し、未記載挙動は未確認欄へ分離する。
JDKインストールとJAVA_HOME設定補足3: README一次資料の命令・設定名・版を検証ログ3行目に転記し、未記載挙動は未確認欄へ分離する。
JDKインストールとJAVA_HOME設定補足4: README一次資料の命令・設定名・版を検証ログ4行目に転記し、未記載挙動は未確認欄へ分離する。
V6 ESMとjava-version latest
What's new V6はaction実装のESM移行、oracle-openjdk/redhat/liberica-nik/Tencent Kona JDK25拡張、java-version: latestで配布メタデータから最新GAを解決、JEP322多フィールド版、Temurin jdk+jmods、Alpine musl artifact、force-download: true、cache-pathとcache-read-only、cache-jdk、Maven複数server credentials、隔離GPG home、problem-matcher: false、GRAALVM_HOME、v1-v4非推奨などがREADMEに並びます。
adopt/adopt-hotspotはtemurinへ、adopt-openj9はsemeruへ置き換えるようREADMEが述べ、server-usernameなどのenv-var入力名変更とmaven-gpg-plugin 3.2.0要件もV6 release notesへリンクされています。
actions/setup-javaの「V6 ESMとjava-version latest」節のREADME記述は、コマンド・ファイル・版をセットでメモし、記載外は書きません。
actions/setup-javaでは「V6 ESMとjava-version latest」だけを切り出し、他章と混ぜず条件を残します。
actions/setup-java README「V6 ESMとjava-version latest」の固有名詞は該当ファイルを開いてから写し、推測しません。
actions/setup-java採用メモ:V6 ESMとjava-version latest節でREADMEに無い数値や互換保証は書かず、記載コマンドとファイルだけを残します。
V6 ESMとjava-version latest補足1: README一次資料の命令・設定名・版を検証ログ1行目に転記し、未記載挙動は未確認欄へ分離する。
V6 ESMとjava-version latest補足2: README一次資料の命令・設定名・版を検証ログ2行目に転記し、未記載挙動は未確認欄へ分離する。
V6 ESMとjava-version latest補足3: README一次資料の命令・設定名・版を検証ログ3行目に転記し、未記載挙動は未確認欄へ分離する。
V6 ESMとjava-version latest補足4: README一次資料の命令・設定名・版を検証ログ4行目に転記し、未記載挙動は未確認欄へ分離する。
java-version-fileと.sdkmanrc
Read the version from a file例は.java-version、.tool-versions、.sdkmanrcをサポートとREADMEにあります。.sdkmanrcはSDKMAN vendor identifierからdistribution自動検出もREADMEのV5/V6変更点です。
リポジトリに.java-versionがあるJavaプロジェクトでは、workflow内のjava-version固定文字列よりjava-version-fileを使う方がREADMEの意図に沿います。asdf vendor identifier対応もREADMEに触れているため、.tool-versionsを使うmono repoではinputsのdistribution指定とファイル内容の整合をPRで確認するのがsetup-java固有のチェックになります。
actions/setup-javaの「java-version-fileと.sdkmanrc」節のREADME記述は、コマンド・ファイル・版をセットでメモし、記載外は書きません。
actions/setup-javaでは「java-version-fileと.sdkmanrc」だけを切り出し、他章と混ぜず条件を残します。
actions/setup-java README「java-version-fileと.sdkmanrc」の固有名詞は該当ファイルを開いてから写し、推測しません。
actions/setup-java採用メモ:java-version-fileと.sdkmanrc節でREADMEに無い数値や互換保証は書かず、記載コマンドとファイルだけを残します。
java-version-fileと.sdkmanrc補足1: README一次資料の命令・設定名・版を検証ログ1行目に転記し、未記載挙動は未確認欄へ分離する。
java-version-fileと.sdkmanrc補足2: README一次資料の命令・設定名・版を検証ログ2行目に転記し、未記載挙動は未確認欄へ分離する。
java-version-fileと.sdkmanrc補足3: README一次資料の命令・設定名・版を検証ログ3行目に転記し、未記載挙動は未確認欄へ分離する。
java-version-fileと.sdkmanrc補足4: README一次資料の命令・設定名・版を検証ログ4行目に転記し、未記載挙動は未確認欄へ分離する。
Maven/Gradle/sbtキャッシュキー
Caching節とV6/V5 notesはMaven/Gradle/sbt依存キャッシュ、wrapper cache分離、.mvn/extensions.xmlとgradle.propertiesをcache keyに含める変更、cache-primary-key outputなどをREADMEが説明しています。cache-jdkはcache入力時にJDKダウンロードもキャッシュし、warm jobはvendor API呼び出しを避けられるとREADMEのV6にあります。
依存キャッシュだけ欲しくてJDKを毎回入れ替えたい場合はcache-jdkのtrue/falseをworkflowで明示する必要があります。stale restoreを疑うときはREADMEのforce-download: trueで再取得を試すのがsetup-java v6の公式手段です。
actions/setup-javaの「Maven/Gradle/sbtキャッシュキー」節のREADME記述は、コマンド・ファイル・版をセットでメモし、記載外は書きません。
actions/setup-javaでは「Maven/Gradle/sbtキャッシュキー」だけを切り出し、他章と混ぜず条件を残します。
actions/setup-java README「Maven/Gradle/sbtキャッシュキー」の固有名詞は該当ファイルを開いてから写し、推測しません。
actions/setup-java採用メモ:Maven/Gradle/sbtキャッシュキー節でREADMEに無い数値や互換保証は書かず、記載コマンドとファイルだけを残します。
Maven/Gradle/sbtキャッシュキー補足1: README一次資料の命令・設定名・版を検証ログ1行目に転記し、未記載挙動は未確認欄へ分離する。
Maven/Gradle/sbtキャッシュキー補足2: README一次資料の命令・設定名・版を検証ログ2行目に転記し、未記載挙動は未確認欄へ分離する。
Maven/Gradle/sbtキャッシュキー補足3: README一次資料の命令・設定名・版を検証ログ3行目に転記し、未記載挙動は未確認欄へ分離する。
Maven/Gradle/sbtキャッシュキー補足4: README一次資料の命令・設定名・版を検証ログ4行目に転記し、未記載挙動は未確認欄へ分離する。
複数JDKとMaven toolchains
Multiple JDKs and Maven toolchains節への目次リンクがあり、READMEは繰り返しsetup-java invocationでもtoolchain entryを保持するV5改善を述べています。set-default: falseでJAVA_HOME/PATHを変えずに追加JDKを入れるinputもV5で追加されています。
マルチモジュールMavenでtoolchain ID数不一致はV6でtargeted errorになるとREADMEにあります。toolchainを使うworkflowでは、READMEのMaven toolchains節の例どおりinputs countを揃えてからmatrix jobを広げるのがsetup-java固有のデバッグ順序です。
actions/setup-javaの「複数JDKとMaven toolchains」節のREADME記述は、コマンド・ファイル・版をセットでメモし、記載外は書きません。
actions/setup-javaでは「複数JDKとMaven toolchains」だけを切り出し、他章と混ぜず条件を残します。
actions/setup-java README「複数JDKとMaven toolchains」の固有名詞は該当ファイルを開いてから写し、推測しません。
actions/setup-java採用メモ:複数JDKとMaven toolchains節でREADMEに無い数値や互換保証は書かず、記載コマンドとファイルだけを残します。
複数JDKとMaven toolchains補足1: README一次資料の命令・設定名・版を検証ログ1行目に転記し、未記載挙動は未確認欄へ分離する。
複数JDKとMaven toolchains補足2: README一次資料の命令・設定名・版を検証ログ2行目に転記し、未記載挙動は未確認欄へ分離する。
複数JDKとMaven toolchains補足3: README一次資料の命令・設定名・版を検証ログ3行目に転記し、未記載挙動は未確認欄へ分離する。
複数JDKとMaven toolchains補足4: README一次資料の命令・設定名・版を検証ログ4行目に転記し、未記載挙動は未確認欄へ分離する。
V5 node24 runnerと署名検証
V5はNode20からNode24 runtimeで、self-hosted runner v2.327.1以降がREADME要件です。TemurinとMicrosoft Build of OpenJDKのpackage signature verification optionalもV5/V6にあり、V6ではTemurin/Microsoftで署名検証デフォルト有効とREADMEが述べます。
Publishing packagesとAdvanced usageはdocs/advanced-usage.mdへリンクしています。GPG節はgpg.passphraseEnvNameとmaven-gpg-plugin 3.2.0要件をREADMEが強調しており、Maven Central公開workflowを組む前にそのdocを読むのがsetup-java採用時の必須ステップです。
actions/setup-javaの「V5 node24 runnerと署名検証」節のREADME記述は、コマンド・ファイル・版をセットでメモし、記載外は書きません。
actions/setup-javaでは「V5 node24 runnerと署名検証」だけを切り出し、他章と混ぜず条件を残します。
actions/setup-java README「V5 node24 runnerと署名検証」の固有名詞は該当ファイルを開いてから写し、推測しません。
actions/setup-java採用メモ:V5 node24 runnerと署名検証節でREADMEに無い数値や互換保証は書かず、記載コマンドとファイルだけを残します。
V5 node24 runnerと署名検証補足1: README一次資料の命令・設定名・版を検証ログ1行目に転記し、未記載挙動は未確認欄へ分離する。
V5 node24 runnerと署名検証補足2: README一次資料の命令・設定名・版を検証ログ2行目に転記し、未記載挙動は未確認欄へ分離する。
V5 node24 runnerと署名検証補足3: README一次資料の命令・設定名・版を検証ログ3行目に転記し、未記載挙動は未確認欄へ分離する。
V5 node24 runnerと署名検証補足4: README一次資料の命令・設定名・版を検証ログ4行目に転記し、未記載挙動は未確認欄へ分離する。
Temurin smoke
checkout@v7 setup-java@v6 distribution temurin java-version 25 java --version README Usage。
actions/setup-javaの「Temurin smoke」節のREADME記述は、コマンド・ファイル・版をセットでメモし、記載外は書きません。
actions/setup-javaでは「Temurin smoke」だけを切り出し、他章と混ぜず条件を残します。
actions/setup-java README「Temurin smoke」の固有名詞は該当ファイルを開いてから写し、推測しません。
actions/setup-java採用メモ:Temurin smoke節でREADMEに無い数値や互換保証は書かず、記載コマンドとファイルだけを残します。
Temurin smoke補足1: README一次資料の命令・設定名・版を検証ログ1行目に転記し、未記載挙動は未確認欄へ分離する。
Temurin smoke補足2: README一次資料の命令・設定名・版を検証ログ2行目に転記し、未記載挙動は未確認欄へ分離する。
Temurin smoke補足3: README一次資料の命令・設定名・版を検証ログ3行目に転記し、未記載挙動は未確認欄へ分離する。
Temurin smoke補足4: README一次資料の命令・設定名・版を検証ログ4行目に転記し、未記載挙動は未確認欄へ分離する。
GPG/cache
docs/advanced-usage.md GPG、maven-gpg-plugin 3.2.0。cache-read-only force-download V6。
actions/setup-javaの「GPG/cache」節のREADME記述は、コマンド・ファイル・版をセットでメモし、記載外は書きません。
actions/setup-javaでは「GPG/cache」だけを切り出し、他章と混ぜず条件を残します。
actions/setup-java README「GPG/cache」の固有名詞は該当ファイルを開いてから写し、推測しません。
actions/setup-java採用メモ:GPG/cache節でREADMEに無い数値や互換保証は書かず、記載コマンドとファイルだけを残します。
GPG/cache補足1: README一次資料の命令・設定名・版を検証ログ1行目に転記し、未記載挙動は未確認欄へ分離する。
GPG/cache補足2: README一次資料の命令・設定名・版を検証ログ2行目に転記し、未記載挙動は未確認欄へ分離する。
GPG/cache補足3: README一次資料の命令・設定名・版を検証ログ3行目に転記し、未記載挙動は未確認欄へ分離する。
GPG/cache補足4: README一次資料の命令・設定名・版を検証ログ4行目に転記し、未記載挙動は未確認欄へ分離する。
編集部の結論
actions/setup-javaはGitHub ActionsでTemurin等のJDKをPATHとJAVA_HOMEへ入れ、Maven/Gradle/sbt依存をキャッシュしたいJava/Scala/Kotlinプロジェクト向きです。READMEはv1からv4を非推奨とし、actions/setup-java@v6を最新安定版と述べます。V6はESM移行、java-version: latest、checksum/署名検証、cache-path、cache-read-onlyなどが追加されています。runner v2.327.1未満のself-hostedや、READMEにないJDK配布を使う独自ポリシーには向きません。checkout@v7の後にdistribution: temurin、java-version: '25'でsetup-java@v6を走らせ、java --version出力が期待どおりか確認してください。
コミュニティノート