是否需要一个特别的OpenJDK版本来支持新的苹果硅芯片?
我看到目前有macOS/OS X的JDK下载,但这些似乎只适用于x86处理器。对吗?如果是这样,我可以在哪里下载用于M1的OpenJDK版本?
是否需要一个特别的OpenJDK版本来支持新的苹果硅芯片?
我看到目前有macOS/OS X的JDK下载,但这些似乎只适用于x86处理器。对吗?如果是这样,我可以在哪里下载用于M1的OpenJDK版本?
当前回答
您可以从以下网站下载Liberica JDK:
https://bell-sw.com/pages/downloads/?os=macOS&architecture=ARM
在IntelliJ IDEA for M1中,JetBrains运行时也是原生的(ARM64)。
其他回答
我按照下面的步骤,成功地在MacBook Air (M1)上运行了JDK 16:
登陆Oracle.com 进入产品→软件→Java 点击“立即下载Java” 点击“JDK下载” 选择“macOS安装程序” 安装JDK 尝试任何示例Java程序,这应该适合您。
我成功地在我的MacBook Air (M1)上安装并运行了这个程序。
brew install openjdk
以我为例,在MacBook Air (M1)上成功安装OpenJDK后,java命令仍然不起作用。我用
brew info openjdk
然后有一个命令喜欢
For the system Java wrappers to find this JDK, symlink it with
sudo ln -sfn /opt/homebrew/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk
执行该命令,java命令生效。
您可以使用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似乎是JEP 391与Windows移植(JEP 388)结合的主要推动者。他们有一个单独的GitHub存储库,实际上有一个针对macOS-aarch64的EA发行版。
我不确定与OpenJDK存储库的确切关系。
现在,来自Oracle的OpenJDK 17支持Apple M1芯片。JEP 391的状态是关闭和交付。
您可以从官方网站下载免费的macOS/AArch64开源JDK版本17。