質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.30%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

4回答

447閲覧

無料で使えるJDKを知りたいです。

alias.notebook

総合スコア5

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2025/06/10 15:16

実現したいこと

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ページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

Windows 11であれば、次の方法でインストールしてください。

  1. Win+Xキー、または、タスクバーのスタートアイコンを右クリックし、「ターミナル」を起動します。

  2. 次のコマンドを入力します。

    winget install Microsoft.OpenJDK.21
  3. 問い合わせには全て「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を使うかは総合的な判断で

たとえば、次のような事が判断基準です。

  1. 無償のサポート期間はいつまでか?有償でサポートを継続する場合、いくらかかるのか?
  2. 本番で使う予定のJDKと同じか?本番環境でサポートしているJDKなのか?
  3. 使う予定の環境(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

raccy

総合スコア21765

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

alias.notebook

2025/06/11 15:21

色々なお話ありがとうございます。ためになります。 ところで個人利用において、Microsoft.OpenJDK.21は2025年9月以降有料になるのでしょうか。 それともセキュリティパッチなどのサポートがなくなるだけで、無料のままという認識でよいでしょうか。
raccy

2025/06/11 16:31

Microsoft.OpenJDK.21は2028年9月まで無償でサポートされます。しかし、サポートが終了した2028年9月以降も使い続けることはWindows7を今でも使い続けている事ぐらい非常に危険な行為です。そこには無償とか有償とか関係ありません。あなたがそういった所を判断できるセキュリティの専門家でもない限り、サポートが終了したソフトウェアを使い続けることは絶対にやめて下さい。2028年9月以降もバージョン21を使い続けたい場合は、有償でサポート期間がより長くできるJDKを選択してください。
alias.notebook

2025/06/13 05:27

アドバイスありがとうございます。 個人学習用で一時的に使うもので外部に公開するものではなかったので、あまり考慮しておりませんでした。 ただご指摘頂いたことは言われる通りなので気を付けようと思います。
guest

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
Manabu

総合スコア110

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

alias.notebook

2025/06/13 05:24

ありがとうございます。 こういうダウンロード方法もあるのですね。勉強になります。 17.0.2が最終でしたか、ありがとうございます。
guest

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

bsdfan

総合スコア4920

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

alias.notebook

2025/06/11 15:24

なるほど、今は無償だけれど、今度は有料になるかもしれないということですね。 いろいろあってキャパこえそうですが、教えて頂いたサイトもおちついてみてみようと思います。
guest

0

それhttps://jdk.java.net/24/でよいです。
OpenJDKといいます。
Oracleが出しています。
無料で、登録不要です。

今から勉強するなら、最新バージョン一択でしょう。

投稿2025/06/10 16:03

hiroki-o

総合スコア1416

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

alias.notebook

2025/06/10 16:07

ありがとうございます。 チュートリアルの推奨環境に合わせたかったのですが(バージョン違いだとうまく動かないことが多いので)、とりあえずこちらのJDKで進めてみます。
TakaiY

2025/06/11 01:16

以下の場所に過去のリリースがあります。 商用で使うのはやめたほうがいいですが、個人で勉強に使うのであれば問題ないでしょう。 https://jdk.java.net/archive/ また、JDKの有償/無償については以下のサイトのものがよくまとまっていると思います。 https://www.sejuku.net/blog/63447
alias.notebook

2025/06/11 10:38

TakaiYさん ありがとうございます。これは助かります。 17(GA)と17.0.1と17.0.2があり、本来は17.0.2がよさそうですが、GAが普及版みたいなそんな意味あいがあるようなので、いったんGAに変えてみようと思います。 有償/無償のサイトについてもありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問