387

过去,Oracle 曾经发布过适用于 Windows 的可执行安装程序,它会:

  • 解压文件
  • 添加指示已安装版本和路径的注册表项
  • 将 JRE 添加到系统 PATH
  • 向 Windows 注册卸载程序。

从 Java 11 开始,Oracle 的免费 Java 版本(Oracle OpenJDK ) 似乎不包含安装程序。它只是一个包含二进制文件的 zip 文件。

既然上述集成不再存在,我们应该如何在 Windows 上安装 OpenJDK 11?它们不是必需的吗?

4

7 回答 7

526
  1. 将 zip 文件解压缩到一个文件夹中,例如C:\Program Files\Java\,它将创建一个jdk-11文件夹(其中 bin 文件夹是一个直接子文件夹)。您可能需要管理员权限才能将 zip 文件解压缩到此位置。

  2. 设置路径:

    • 选择控制面板,然后选择系统。
    • 单击高级,然后单击环境变量。
    • 将JDK安装的bin文件夹的位置添加到系统变量中的PATH变量中。
    • 以下是 PATH 变量的典型值:C:\WINDOWS\system32;C:\WINDOWS;"C:\Program Files\Java\jdk-11\bin"
  3. 设置 JAVA_HOME:

    • 在系统变量下,单击新建。
    • 输入变量名称为 JAVA_HOME。
    • 输入变量值作为JDK的安装路径(不包括bin子文件夹)。
    • 单击确定。
    • 单击应用更改。
  4. 在您的 IDE(例如 IntelliJ 或 Eclipse)中配置 JDK。

你已经准备好了。

要查看它是否有效,请打开命令提示符并键入java -version并查看它是否打印了您新安装的 JDK。

如果要卸载 - 只需撤消上述步骤。

注意:您也可以指向JAVA_HOMEJDK 安装的文件夹,然后将PATH变量设置为%JAVA_HOME%\bin. 因此,当您想要更改 JDK 时,您只需更改JAVA_HOME变量并保持PATH原样。

于 2018-09-27T06:51:42.153 回答
263

AdoptOpenJDK是一个由java 社区托管的新网站。您可以在那里找到 OpenJDK 8 到 16 的 .msi 安装程序,它将执行问题中列出的所有内容(解包、注册表项、PATH 变量更新(和 JAVA_HOME)、卸载程序...)。

在撰写本文时,AdoptOpenJDK 仍托管最新版本的 OpenJDK,但未来计划在Eclipse Adoptium上提供新版本。

于 2019-05-27T13:47:15.250 回答
32

使用Chocolatey 数据包管理器。它是一个类似于 npm 的命令行工具。安装后,使用

choco install openjdk

在提升的命令提示符下安装 OpenJDK。

要将已安装的版本更新到最新版本,请键入

choco upgrade openjdk

使用起来非常简单,特别有助于升级到最新版本。无需手动摆弄路径环境变量。

于 2019-06-18T12:34:15.103 回答
23

来自@ZhekaKozlov 的评论:ojdkbuildzip具有适用于 Windows(和)的 OpenJDK 构建(当前为 8 和 11 msi)。

于 2019-01-07T13:40:13.450 回答
4

您可以使用Amazon Corretto。它可以免费使用多平台、生产就绪的 OpenJDK 发行版。它提供长期支持,包括性能增强和安全修复。在此处查看安装说明。

您还可以从Azul检查Zulu

我想在这里强调的另一件事是 Amazon Corretto 和 Zulu 都符合 TCK 标准。您可以在此处此处查看 OpenJDK 构建比较。

于 2020-04-27T17:39:43.993 回答
2

对于 Java 12 及更高版本,Oracle 的 OpenJDK(GPL2 + 类路径异常)的官方通用可用性 (GA) 和早期访问 (EA) Windows 64 位版本可从JDK 网站以 tar.gz/zip 的形式获得。

如果您更喜欢安装程序,有几个发行版。Java Champions 社区有一篇公开的 Google 文档博客文章,其中列出了最受支持的 OpenJDK 发行版。目前,这些是:

于 2021-04-15T06:49:55.047 回答
0

https://www.openlogic.com/openjdk-downloads允许我选择 OpenJDK8 的 32 位版本(不要问 - Arduino IDE 不能与 11 一起编译),我认为他们只是围绕 AdoptOpenJDK MSIs 但我在 AdoptOpenJDK 上找不到 32 位发行版。

于 2021-03-26T19:06:19.557 回答