Skip to content

Instantly share code, notes, and snippets.

@uemuraj
Created January 5, 2024 02:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save uemuraj/1c8c868aae9fb560527a35853dc3a440 to your computer and use it in GitHub Desktop.
Save uemuraj/1c8c868aae9fb560527a35853dc3a440 to your computer and use it in GitHub Desktop.
古い JDK 7 とか 8 を MSI でサイレントインストールしたい

Java7 は Oracle でしか入手できないようだ(と思う)。

  • MSI はいろいろなオプションがあるが、例えば /passive とした場合...
> jdk-7u80-windows-x64.exe /passive
  • JRE はインストールされずに JDK だけがインストールされる
  • 環境変数は特に設定されないが、レジストリにインストールパスなどは記録される
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit]
"CurrentVersion"="1.7"

[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.7]
"JavaHome"="C:\\Program Files\\Java\\jdk1.7.0_80"
"MicroVersion"="0"

[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.7.0_80]
"JavaHome"="C:\\Program Files\\Java\\jdk1.7.0_80"
"MicroVersion"="0"

ビルド環境を構築するには都合が良いが jdk-8u391-windows-x64.exe は、もうオプションが効かないようだ... マイクロソフトでは古い Java について Eclipse Temurin build を使うように案内があり、こちらは Java8 からしか見つからないが、同じオプションが効く。

> OpenJDK8U-jdk_x64_windows_hotspot_8u392b08.msi /qn
  • インストールパスは Eclipse Adoptium 配下になる
  • PATH に追加される
  • レジストリにはアンインストーラの登録情報だけがある
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{EDBCAE99-82D1-4E55-A5A0-8E313D6FB09D}]
"InstallLocation"="C:\\Program Files\\Eclipse Adoptium\\jdk-8.0.392.8-hotspot\\"
"DisplayName"="Eclipse Temurin JDK with Hotspot 8u392-b08 (x64)"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment