可以 Java 9 运行 在 32 位 OS 上吗?

Can Java 9 run on a 32-bit OS?

好像没有32位的下载包 Oracle 可用 download list.

更新

可以在这里下载:

wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/9+181/jdk-9_windows-x86_bin.exe

虽然 JDK9 的 32 位二进制文​​件似乎在 Oracle 糟糕的、未加密的 download page 中丢失,但如果(在单击 "Accept License Agreement" 之后)您复制64 位二进制文​​件的 URL 并将 x64 更改为 x86,它将为您提供 32 位二进制文​​件。


更新:现在它不见了。离奇!甲骨文在玩什么?它们 went to the effort to fix x86-specific bugs for Java 9, they explicitly said 32-bit Windows and Linux were supported, they list installation instructions for 32-bit systems, they made 32-bit builds fully available throughout the pre-release period for testing purposes, and nothing in their JDK 9 migration guide 表示 32 位平台已被删除(事实恰恰相反:它表示 -client VM 命令行选项已被删除,因此更快的 -server VM 现在是默认设置对于 32 位)。

那么他们为什么突然隐藏发布的二进制文件?

我碰巧下载了 Windows JDK(包括 JRE)和用于 x86 的 Linux JRE。我没有 Linux JDK。 Windows exe 的属性中有 Oracle 数字签名,因此您可以看到它是真实的。我确实希望 Oracle 能够齐心协力。


更新 2:显然 Oracle 已决定永远取消对 x86 Java 的支持。他们意外地以某种方式完成、编译、数字签名并发布了 Java 9 个二进制文件。二进制文件仍然有效,但可能不会收到更新。


更新 3:显然 Oracle 对 Java 开发人员变得如此仇恨和敌视,以至于他们 have compelled Google to block the above downloads with a DMCA request。我无能为力。对不起。如果你有 Java 9,你就有了,它仍然可以工作。如果你没有 Java 9,那么,你必须发挥创意。

已删除 Windows 32 位客户端 VM:在 JDK 9 中,Windows 32 位客户端 VM 不可用。

data source

Oracle has dropped Windows 32-bit Client VM

但是:那里的说法 "In JDK 9, the Windows 32–bit client VM is not available. Only a server VM is offered." 甚至都不准确,甚至没有 32 位服务器 VM(截至 2017 年 9 月 27 日)。

更新:不仅 Windows,而且没有适用于任何平台的 32 位可用。

首席 Java 架构师 Mark Reinhold in Twitter on September 25:

Sorry, but we have no plans to ship 32-bit builds of JDK 9. We’re trying to focus more on the future than the past.

Yes, you can build your own 32-bit JDK 9 binaries.

我在这里找到了一个 Win32 版本:https://github.com/ojdkbuild/ojdkbuild

这是 RedHat 提供的 OpenJDK(不支持),不知道他们将来是否会提供这些构建。

尝试以下 link 的 openJDK,为大多数 java 版本提供 X86(32 位)和 X64(64 位)

https://adoptopenjdk.net/releases.html?variant=openjdk16&jvmVariant=hotspot