Windows 10 April Update 2018のcurl&tarコマンドでOpenJDKのインストールを自動化

(2018/7/3追記) OpenJDK11 より、Windows向けバイナリーはzipフォーマットでの提供となるため、このエントリーの内容はObsoleteになりますw

OpenJDKは9より、Windows向けのバイナリーの提供が開始されました。

ですがWindows向けもファイルフォーマットはtar.gzであり、Windowsの標準コマンドの範囲では、アーカイブを展開することができません。

しかし Windows 10 April Update 2018からcurltarコマンドが使用できるようになったので、これらコマンドを使用してOpenJDKのバイナリーのダウンロード&展開をスクリプト化しよう、というのが今エントリーの趣旨です。

下調べ

ダウンロードに必要なURLは http://jdk.java.net/10/ から取得してください。

コマンドプロンプトの場合

コマンドプロンプトの場合は、以下の通りとなります。なおtarコマンドのオプションについては手癖です。

なお、 Git for Windows のインストールするUNIXコマンドラインツールにPATHを通している場合は、tarコマンドが競合するので、環境変数PATHの優先順位でc:\WINDOWS\system32が先に来るように調整してください。

cd (展開先のディレクトリー)
curl -L -O https://download.java.net/java/GA/jdk10/10.0.1/fb4372174a714e6b8c52526dc134031e/10/openjdk-10.0.1_windows-x64_bin.tar.gz
tar xvzf openjdk-10.0.1_windows-x64_bin.tar.gz

試しにJShellでも起動してみます。

f:id:setoazusa:20180430230857p:plain

PowerShellの場合

PowerShellでも同様なのですが、PowerShell先輩の顔を立ててダウンロードをSystem.Net.WebClientで行うと次の様になります。

$client = New-Object System.Net.WebClient
$client.DownloadFile("https://download.java.net/java/GA/jdk10/10.0.1/fb4372174a714e6b8c52526dc134031e/10/openjdk-10.0.1_windows-x64_bin.tar.gz", "c:\java\openjdk-10.0.1_windows-x64_bin.tar.gz")
tar xvzf openjdk-10.0.1_windows-x64_bin.tar.gz

以上、コマンドを使用してWindowsのOpenJDKのバイナリーのダウンロード&展開をスクリプト化する方法についてでした。

個人的には、OracleJDKのころの、ライセンス同意等の操作をパスするためのクッキーの設定等の回避ハックが必要なくなったので、非常にスマートな形になったと感じています。