32位和64位
这个问题是为那些研究如何在 vscode-java 上使用比 Java 11 更旧的 Java(例如 Java 8)的人量身定制的,因此对于那些没有遇到错误的人来说
“需要 Java 11 或更高版本才能运行。请下载并安装最新的 JDK。”
这个问题将帮助那些提前发现该问题但不知道即将发生的错误以及因此无法搜索错误并找到上面的解决方案链接的人。
我需要强调这一点,以清楚地表明这可能不是明显的重复。
现在实际的问题是:
根据https://github.com/redhat-developer/vscode-java/wiki/JDK-Requirements#jdk11.requirement:
“自 vscode-Java 0.65.0 起,Java 11 是最低要求版本。”
+++自 2020 年 7 月 22 日起,运行 vscode-java 需要 Java 11 (JDK11)。+++
因此,许多在较低 Java 版本上运行项目的用户需要更改版本或找到解决方法,以便他们可以保持一切“原样”。
vscode-java 0.65.0 中对 java 11 有了新的要求,如何在低于 11 版本的 java 上使用 vscode-java?
32位和64位都需要答案。
####
仅适用于 32 位
请记住,Oracle JDK 8 是最后一个支持 32 位 x86 的 Oracle JDK,OpenJDK 也是如此。
并且Oracle JDK 11和OpenJDK都不支持32位x86。
我正在寻找最佳解决方法,即如何使用 vscode-java 扩展在 Windows 32 位上使用最新的 JDK,它不一定是 Oracle JDK。
仅 32 位需要答案。
答案1
仅适用于 32 位 START
+++请注意,32 位通常已过时。这可能只适合那些有旧上网本的人。+++
您可以直接切换到 vscode“本身”推荐的 OpenJDK 14(Oracle JDK 在版本 8 之后已停止对 32 位的支持)。
这个 vscode 网站
https://github.com/redhat-developer/vscode-java/wiki/JDK-Requirements#jdk11.requirement
建议点击链接顶部的以下链接Java Development Kit
:
因此,非 Oracle JDK 是在 32 位上使用 Java 14 的唯一方法。
仅适用于 32 位 END
####
32 位和 64 位 START
对于那些由于 32 位系统以及不允许使用 OpenJDK JDK(即如果必须使用 Oracle JDK)而无法安装 JDK 11 或更高版本的人,或者对 64 位有其他限制的人,一种解决方法是安装vscode-java 版本 0.64.1而不是最新的 0.65.0。(同样,除非您对 JDK 版本有限制,否则不建议这样做,这只是可能的,请参阅上文)
看https://github.com/redhat-developer/vscode-java/issues/1543#issuecomment-669895753
如何安装早期扩展版本:
编辑
如果没有其他限制,则不应执行以下操作。最合理的限制是您使用 32 位 Windows,并且必须使用 Oracle JDK(Oracle JDK 8 是支持 32 位的最后一个版本)。或者,如果您必须使用低于 4.7 版本的 Gradle,请参阅Github 讨论再次。
通常情况下:升级,然后你仍然可以通过更改设置来恢复使用较旧的 Java 版本https://github.com/redhat-developer/vscode-java/wiki/JDK-Requirements#jdk11.requirement:
我需要将我的项目迁移到 Java 11 吗?
“不,你不需要!好吧,你应该这样做,因为我们不是来评判的。只要在用户的 settings.json 中配置了正确的 java.configuration.runtimes,仍然可以编译/运行 Java 1.5 到 14 的 Java 应用程序。”
--> 这意味着您可以升级扩展并使用您选择的 Java 运行时。有关 Windows 64 位的详细说明,请参阅https://github.com/redhat-developer/vscode-java/issues/1543#issuecomment-671106893。