見出し画像

最新の OpenJDK 環境を Windows に用意する

Windows で Java Runtime Envirnoment を利用する場合、 https://java.com/ja/download/ からインストーラをダウンロードし利用するのが一般的です。もしくは https://www.oracle.com/java/technologies/javase-downloads.html から最新の JRE をダウンロードすることが可能です。

ごく個人的な趣向なのですが、Oracle JDK (JRE) のサポートポリシーの変更による有償化の一件や、Oracle の JRE 利用時にアップデートを確認するプログラムが常駐することから、OpenJDK を利用することにしました。
もちろん OpenJDK も Oracle 社から配布されているものですが、本家の JRE を利用するよりは何となく精神的に良い感じがするということと、Chocolatey ( https://chocolatey.org/ ) でアップデートを管理できるというメリットがあります。

この記事では Windows で OpenJDK を利用するにあたって、個人的に最もよい管理ができる方法を紹介します。

OpenJDK のバイナリは Chocolatey からダウンロード・インストールする

Linux における yum や MacOS における Homebrew のように、サードパーティー製のツールですが Windows も同様にソフトウェア管理をすることができます。それが Chocolatey です。
https://chocolatey.org/

利用方法は割愛しますが、OpenJDK を活用するには Chocolatey を利用するのが一番簡易かと思います。Chocolatey コミュニティでも、OpenJDK は熱心にメンテナンスされているようなので、利用は問題ないかと思われます。
https://chocolatey.org/packages/openjdk

最新の OpenJDK (この記事を書いている時、14.0.1)がインストールされます。

> choco install openjdk


OpenJDK のパスを通す

特にオプションも指定せず Chocolatey でインストールした OpenJDK は、 `C:\Program Files\OpenJDK` のディレクトリにインストールされます。この下にバージョンごと OpenJDK がインストールされます。

C:\Program Files\OpenJDK>dir
ドライブ C のボリューム ラベルがありません。
ボリューム シリアル番号は 4446-02E9 です
C:\Program Files\OpenJDK のディレクトリ
2020/05/18  23:20    <DIR>          .
2020/05/18  23:20    <DIR>          ..
2020/03/05  19:37    <DIR>          jdk-14.0.1
2020/04/07  09:47    <DIR>          openjdk-8u252-b09
              0 個のファイル                   0 バイト
              4 個のディレクトリ  65,830,121,472 バイトの空き領域

`C:\Program Files\OpenJDK\jdk-14.0.1\bin` を PATH に通せば各種 Java アプリケーションを利用できます。一方で、これも個人的な趣味ですが、シンボリックリンクを作成することで、一々 PATH を書き換えない方法もあります。 `mklink` コマンドでディレクトリのシンボリックリンクを作成することが可能です。

C:\Program Files\OpenJDK>mklink /D openjdk jdk-14.0.1
openjdk <<===>> jdk-14.0.1 のシンボリック リンクが作成されました
C:\Program Files\OpenJDK>dir
ドライブ C のボリューム ラベルがありません。
ボリューム シリアル番号は 4446-02E9 です
C:\Program Files\OpenJDK のディレクトリ
2020/05/18  23:24    <DIR>          .
2020/05/18  23:24    <DIR>          ..
2020/03/05  19:37    <DIR>          jdk-14.0.1
2020/05/18  23:24    <SYMLINKD>     openjdk [jdk-14.0.1]
2020/04/07  09:47    <DIR>          openjdk-8u252-b09
              0 個のファイル                   0 バイト
              5 個のディレクトリ  65,830,055,936 バイトの空き領域

サーバ管理をしているとき、複数のバージョンのアプリケーションをシンボリックリンクで切り替えて使用するのはよくある手順です。
バージョンアップごとに PATH を書き換えるのか、それともシンボリックリンクを張り直すのか……どちらの方が手間かは何とも言えませんが、個人的にはこっちの方が好きです。

C:\Program Files\OpenJDK>"C:\Program Files\OpenJDK\openjdk\bin\java.exe" -version
openjdk version "14.0.1" 2020-04-14
OpenJDK Runtime Environment (build 14.0.1+7)
OpenJDK 64-Bit Server VM (build 14.0.1+7, mixed mode, sharing)

`C:\Program Files\OpenJDK\openjdk\bin\` を PATH に通してあげれば、OpenJDK が使用できます。

私の Windows では FreePlane など、今でも Java アプリケーションを動かすことがあります。最新かつセキュアな JRE をきちんと利用していきたいものです。

老後、奥さんと世界一周のための費用にします。