过去,Oracle曾发布过可执行安装程序,用于在Windows平台上完成以下操作:
- 解压文件
- 添加注册表键,指示已安装版本和路径
- 将JRE添加到系统PATH中
- 在Windows中注册卸载程序。
从Java 11开始,Oracle的免费Java版本(Oracle OpenJDK)似乎不包括安装程序,而是一个包含二进制文件的zip文件。
既然没有了上述集成,我们应该如何在Windows上安装OpenJDK 11呢?难道它们不是必要的吗?
过去,Oracle曾发布过可执行安装程序,用于在Windows平台上完成以下操作:
从Java 11开始,Oracle的免费Java版本(Oracle OpenJDK)似乎不包括安装程序,而是一个包含二进制文件的zip文件。
既然没有了上述集成,我们应该如何在Windows上安装OpenJDK 11呢?难道它们不是必要的吗?
将zip文件解压到一个文件夹中,例如C:\Program Files\Java\
,这将创建一个名为jdk-11
的文件夹(其中bin文件夹是直接子文件夹)。您可能需要管理员权限将zip文件解压到此位置。
设置PATH:
C:\WINDOWS\system32;C:\WINDOWS;"C:\Program Files\Java\jdk-11\bin"
设置JAVA_HOME:
bin
子文件夹)。完成了。
要查看是否成功,打开命令提示符并输入java -version
,看看是否打印出您新安装的JDK。
如果您想卸载,请撤销上述步骤。
注意:您还可以将JAVA_HOME
指向JDK安装文件夹,然后将PATH
变量设置为%JAVA_HOME%\bin
。这样当您想要更改JDK时,只需更改JAVA_HOME
变量,而不必更改PATH
。
对于Java 17及以上版本,您可以使用Eclipse Adoptium网站。根据他们的简介,Eclipse Adoptium项目是原始AdoptOpenJDK任务的延续。
对于Java 11(8到16),您可以使用AdoptOpenJDK网站,该网站由Java社区托管。您可以在那里找到OpenJDK 8到16的 .msi安装程序,它将执行问题中列出的所有操作(解压缩,注册表键,PATH变量更新(和JAVA_HOME),卸载程序...)。
使用Chocolatey包管理器。它是类似于npm的命令行工具。安装后,使用以下命令:
choco install openjdk --version=11.0
在提升权限的命令提示符中安装OpenJDK 11(如果要安装最新版本,请省略--version
参数)。choco upgrade openjdk
非常简单易用,特别是升级到最新版本时非常有帮助。无需手动调整路径环境变量。
根据 @ZhekaKozlov 的评论:ojdkbuild 在 Windows 平台上提供了 OpenJDK 构建版本(目前有 8 和 11 两个版本),可用 zip
或 msi
文件进行下载。
java -version
并获得期望的输出。 - hannes101从Java 12开始,甲骨文公司官方提供了通用可用性(GA)和早期访问(EA)的Windows 64位OpenJDK版本(GPL2 + Classpath Exception),可以在JDK网站上以tar.gz/zip的形式下载。
如果您喜欢安装程序,有几个发行版可供选择。Java Champions社区发布了一个公共Google文档和博客文章,列出了最受支持的OpenJDK发行版。目前,这些发行版包括:
Scoop是一个安装你熟知和喜爱的程序的工具,通过命令行以最小的阻力来完成。
scoop bucket add java
scoop.cmd install openjdk17
https://www.openlogic.com/openjdk-downloads让我选择了一个32位版本的OpenJDK8(不要问为什么 - Arduino IDE无法编译11),我认为它们只是将AdoptOpenJDK MSIs包装起来,但我在AdoptOpenJDK上找不到32位发行版。