Java-Installation auf dem MacBook M1 ohne ‚Bad CPU type‘-Fehler
Stoßen Sie auf den ‚Bad CPU type in executable‘-Fehler bei der Java-Installation auf Ihrem MacBook Air M1? Wir zeigen Ihnen, wie Sie dieses Problem mühelos beheben können.
Aufgrund der ARM64-Architektur des neuen M1-Chips von Apple erhalten Sie beim Versuch, den Befehl „java -version“ auszuführen, möglicherweise diese Fehlermeldung:
-bash: ./java: Bad CPU type in executable
Das Problem entsteht, weil die heruntergeladenen OpenJDK-Binärdateien für die x64-Architektur konzipiert sind – eine Architektur, die üblicherweise in Intel-Prozessoren verwendet wird, und daher nicht mit dem neuen M1-Chip kompatibel ist.
Lösung: ARM64-kompatible OpenJDK-Version finden
Um das Problem zu lösen, muss eine OpenJDK-Version genutzt werden, welche mit der ARM 64-Bit-Architektur kompatibel ist. Wir empfehlen Ihnen Azul Zulu OpenJDK-Builds, die auch Builds für die ARM 64-Bit-Architektur bereitstellen.
Nach dem Herunterladen und Entpacken des passenden Tar-Archivs können Sie den Java-Befehl ohne Probleme ausführen:
Copy code
$ curl -O https://cdn.azul.com/zulu/bin/zulu16.30.19-ca-jdk16.0.1-macosx_aarch64.tar.gz
$ tar -xvf zulu16.30.19-ca-jdk16.0.1-macosx_aarch64.tar.gz
$ cd zulu16.30.19-ca-jdk16.0.1-macosx_aarch64/bin
$ ./java -version
Das Ergebnis sollte nun folgendermaßen lauten:
openjdk version "16.0.1" 2021-04-20
OpenJDK Runtime Environment Zulu16.30+19-CA (build 16.0.1+9)
OpenJDK 64-Bit Server VM Zulu16.30+19-CA (build 16.0.1+9, mixed mode)
Zusatzhinweis: Rosetta 2
Nachdem Sie Java erfolgreich installiert haben, läuft im Hintergrund „Rosetta 2“. Diese kleine Anwendung ermöglicht das Ausführen von Software, die ursprünglich für die Intel x64-Architektur auf Apple-Chips-Macs entwickelt wurde. Weitere Informationen hierzu finden Sie im Apple Support-Thread.