実現したいこと
TERASULNAのチュートリアルを勉強するため
JDKのインストールをしたい(できれば17。できなければ他でも大丈夫です)。
前提
javaは10年以上前に少し使っていました。
何年か前に有償になって?また最近無償になったみたいな話を聞きました。
ライセンス回りが調べてもいまいち理解できませんでした。
無料にはなったけど、次のバージョンがでたら有償とかなんとか・・・。
環境はWindows11 64bitになります。
1.
個人の勉強に使える無償のJDKはどれがあるでしょうか(種類とバージョン)。
可能ならOracleのがよいです(OracleJDK、oracle open jdk?)。
さらに可能ならダウンロード時にアカウント登録不要だとうれしいです。
2.
たとえば下記のWindows / x64のものは無料でしょうか(バージョンは24になってしまいますが)。
また時間がたつと有料になったりするでしょうか。
https://jdk.java.net/24/
ちなみにこれがoracle open jdkでしょうか。
よろしくお願いいたします。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答4件
0
Windows 11であれば、次の方法でインストールしてください。
-
Win+Xキー、または、タスクバーのスタートアイコンを右クリックし、「ターミナル」を起動します。
-
次のコマンドを入力します。
winget install Microsoft.OpenJDK.21
-
問い合わせには全て「Yes」や「はい」で答えます。
これで、Microsoftが作ったJDKが入ります。 Microsoftが作ったのでWindowsとの親和性もバッチシです。 なお、上のコマンドで入るJDKはバージョン21で、サポート終了は2028年9月となっています。今年の9月にはバージョン25がリリースされますので、2025年9月から2028年9月までの間に次のコマンドを実行してバージョン25にアップデートしてください。(これは、2025年9月以降に実施しないと意味がありません。)
winget uninstall Microsoft.OpenJDK.21 winget install Microsoft.OpenJDK.25
上記の結論に至った経緯です。
最新の機能を使いたいということがなければ、LTSのバージョンがお勧め
JavaにはLTSのバージョンと非LTSのバージョンがあります。LTSのバージョンは長期サポートを行いますが、非LTSのバージョンは次のバージョンがリリースされた時点でサポートが終了します。常に最新の機能を使いたいというのであれば非LTSのバージョンを含めた最新バージョンを常に追いかける必要がありますが、安定して長く使いたいという場合は、LTSのバージョンを入れることをお勧めします。Javaはなるべく互換性を保ちながらバージョンアップしますが、ライブラリの追加や削除、変更などがないわけではないため、バージョンアップで動かなくなったと言うことはよくあることです。
Windowsであれば、アップデートが簡単なwingetで入るものがお勧め
wingetに対応したソフトウェアは次のコマンドでアップデートされます。
winget update --all
JDKの場合でも21というバージョンは変わりませんが、サポート期間中はセキュリティの更新のアップデートが行われます。毎回ダウンロードしてインストールする手間がかなり省けます。
wingetに対応していないソフトウェアを入れたいと言った特別な理由がなければ、wingetに対応したソフトウェアの方がインストールもアップデートもとても簡単にできるのでお勧めです。
どのJDKを使うかは総合的な判断で
たとえば、次のような事が判断基準です。
- 無償のサポート期間はいつまでか?有償でサポートを継続する場合、いくらかかるのか?
- 本番で使う予定のJDKと同じか?本番環境でサポートしているJDKなのか?
- 使う予定の環境(OSやクラウド)とJDKの親和性は高いのか?
例えば、Oracle JavaはLTSのバージョンでも他のJDKに比べて無償のサポート期間が短いので避ける、AWSで使う予定なのでAmazon Correttoがいい、などという話です。今回の質問のように、Windowsで使うだけというのであれば、Microsoftが作成したものが無難でしょうと言うことです。
以上を踏まえて、Microsft.OpenJDK.21を推奨します。バージョン17にどうしても拘るのであれば、Microsft.OpenJDK.17でも構いませんが、サポート期間が2027年9月までになるので、その点だけ注意してください。
投稿2025/06/11 12:22
総合スコア21765
0
まずこちらのサイト(https://jdk.java.net/24/ )で以下の項目を探します
Windows / x64 zip (sha256) 211605215
zip (sha256)
がzipファイルのリンクとなります
右クリックメニューから「リンクをコピー」を選びます
このコピーしたリンクを仮にJDK-24-zip-URL
と呼びます
続いてPowerShellを起動します
適当な空のフォルダに移動し、以下のコマンドを打ちます
Invoke-WebRequest -OutFile “jdk24.zip” -Uri “JDK-24-zip-URL”
これでjdk24.zip
という名前のzipファイルが生成されますので、以下のコマンドで解凍します
Expand-Archive “jdk24.zip”
解凍されたフォルダのどこかにjava.exeやjavac.exeが格納されたフォルダが存在するので、そのフォルダの絶対パスをコピーします
あとは「システム環境変数の編集」からGUIを開き、PATHという名前の変数を選択すると、登録URLのリストが表示されます
そのリストの空白枠に、絶対パスをペーストすればjavaコマンドをどこからでも呼び出せるようになります
その他のJDKのリストはこちらにまとめられています
https://jdk.java.net/archive/
JDK17であれば、以下のzipファイルが最終バージョンです(Windows)
17.0.2 (build 17.0.2+8) Windows 64-bit zip (sha256) 178M
投稿2025/06/12 03:40
編集2025/06/12 03:41総合スコア110
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

0
Oracle JDK のライセンス(とサポート)については、こちらにまとめられています。
https://qiita.com/hoka-shino/items/aafb0aba6840136b23e1
個人で勉強に使うのは無償でできるように思います。
が、このライセンスをちゃんと理解するのは、正直難しいです。また、今後もコロコロ変わるかもしれないですし、どうしても Oracle JDK を使いたい、いざとなったら金で解決する余裕があるとかでないかぎり、Oracle JDK でなくていいと思います。
OpenJDK については Oracle 以外が配布しているものもあります。
こちらにまとまっています。
https://qiita.com/yamadamn/items/2dd26a014791b9557199
注意するところは、Oracle の OpenJDK (java.netのもの) は、LTS でも最新のパッチのものが配布されないです。
JDK 17 で言うと、oracle.com 以下のは 17.0.15 が最新ですが、java.net のものは 17.0.2 でとまっています。
勉強だけなら古くても大丈夫かもしれませんが、セキュリティの脆弱性等は確認しておいた方がいいです。
どのディストリビューションを選ぶかは、サポートを受けたりしないなら、違いはないと思います。Adoptium(Eclipse Temurin) が、AWSとかMicrosoftなどのクラウドベンダーの色がついてないのでおすすめ、みたいなことは昔読んだことがあります。
投稿2025/06/11 11:33
総合スコア4920
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

0
それhttps://jdk.java.net/24/でよいです。
OpenJDKといいます。
Oracleが出しています。
無料で、登録不要です。
今から勉強するなら、最新バージョン一択でしょう。
投稿2025/06/10 16:03
総合スコア1416
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2025/06/11 01:16

あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2025/06/11 15:21
2025/06/11 16:31
2025/06/13 05:27