是否需要一个特别的OpenJDK版本来支持新的苹果硅芯片?
我看到目前有macOS/OS X的JDK下载,但这些似乎只适用于x86处理器。对吗?如果是这样,我可以在哪里下载用于M1的OpenJDK版本?
是否需要一个特别的OpenJDK版本来支持新的苹果硅芯片?
我看到目前有macOS/OS X的JDK下载,但这些似乎只适用于x86处理器。对吗?如果是这样,我可以在哪里下载用于M1的OpenJDK版本?
当前回答
Mac M1的最新版本现已上市
https://www.oracle.com/java/technologies/downloads/#jdk18-mac
其他回答
我成功地使用Azul OpenJDK和NetBeans在新的Apple M1芯片上开发Java应用程序。
配置:
zulu16.0.65-ea-jdk16.0.0-ea.24-macos_aarch64 NetBeans 12.1和Maven。
您可以使用sdkman安装Java JDK(参见sdkman install):
vim .sdkman/etc/config
设置sdkman_rosetta2_compatible=false(参见sdkman config)
之后,您将看到一个与M1 jdk兼容的列表:
sdk list java
================================================================================
Available Java Versions
================================================================================
Vendor | Use | Version | Dist | Status | Identifier
--------------------------------------------------------------------------------
Azul Zulu | | 16.0.1 | zulu | | 16.0.1-zulu
| | 11.0.11 | zulu | | 11.0.11-zulu
| | 8.0.292 | zulu | | 8.0.292-zulu
BellSoft | | 16.0.1 | librca | | 16.0.1-librca
| | 11.0.11 | librca | | 11.0.11-librca
| | 8.0.292 | librca | | 8.0.292-librca
Java.net | | 18.ea.3 | open | | 18.ea.3-open
| | 18.ea.2 | open | | 18.ea.2-open
| | 18.ea.1 | open | | 18.ea.1-open
| | 17.ea.28 | open | | 17.ea.28-open
| | 17.ea.27 | open | | 17.ea.27-open
| | 17.ea.26 | open | | 17.ea.26-open
| | 17.ea.25 | open | | 17.ea.25-open
================================================================================
选择一个并使用命令sdk install java IDENTIFIER安装它,即:
SDK安装Java 8.0.292-zulu
请到Azul网站下载。dmg文件:
https://www.azul.com/downloads/zulu-community/?os=macos&architecture=arm-64-bit&package=jdk
它将被放置在一个库中,一旦IntelliJ IDEA识别出它,就应该可以运行了。
不仅仅是JEP-391。
有一个预览分支,https://github.com/openjdk/jdk-sandbox/tree/JEP-391-branch,你可以在Intel Mac上或直接在ARM Mac上使用交叉编译构建JDK 16早期访问(EA)。它运行良好。
以下是安装Oracle JDK 8并从Rosetta - https://www.oracle.com/in/java/technologies/javase/javase-jdk8-downloads.html运行它的步骤
下载macOS x64版本 在尝试安装该包时,如果Rosetta已经不存在,您将收到安装它的提示 其余的安装步骤与任何其他包相同。
您可以通过打开终端并输入以下命令来验证它是否工作:
java -version