웹사이트 검색

[수정됨] 실행 파일의 잘못된 CPU 유형 - MacBook에 Java 설치


나는 최근에 새로운 MacBook Air M1을 얻었고 거기에 가장 먼저 설치하고 싶었던 것은 Java였습니다. 그래서 OpenJDK tar 파일을 다운로드하고 압축을 푼 다음 "java -version\ 명령을 실행하려고 시도했는데 오류가 발생했습니다.

-bash: ./java: 실행 파일의 잘못된 CPU 유형

이것은 저에게 새로운 것이었습니다. 저는 오랫동안 Java 및 Mac OS에서 작업했지만 이런 종류의 오류를 본 적이 없습니다. 몇 가지 온라인 검색 및 디버깅 후 나는 새로운 MacBook M1 칩이 ARM64 아키텍처를 사용하고 JDK 사이트에서 다운로드한 OpenJDK 바이너리가 Intel 프로세서에서 사용되는 x64 아키텍처용으로 빌드되었기 때문에 발생하고 있음을 발견했습니다.

-bash에 대한 수정: ./java: 실행 파일의 잘못된 CPU 유형

문제가 확인된 후 해결책은 간단했습니다. 필요한 것은 ARM64 아키텍처를 지원하는 OpenJDK 구현을 찾는 것뿐이었습니다. 몇 가지 검색 후 Azul Zulu OpenJDK 빌드 페이지에 도달했고 ARM 64비트 아키텍처 빌드가 있었습니다.

tar 파일을 다운로드하고 압축을 풀고 java 명령을 실행했는데 정상적으로 작동했습니다.

$ 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
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)
$

결론

저에게는 "실행 파일의 CPU 유형이 잘못되었습니다.\라는 첫 경험이었습니다. 하지만 여기까지 왔다면 당신도 이 문제에 직면하고 있다는 뜻입니다. Java 또는 다른 소프트웨어일 수 있습니다. 해결책은 ARM 64-를 찾는 것입니다. 소프트웨어의 비트 아키텍처 기반 빌드이며 괜찮을 것입니다.

로제타 2

Java 설정을 마친 후 "Rosetta 2\도 설치할 수 있다는 사실을 알게 되었습니다. 이 작은 유틸리티는 백그라운드에서 실행되며 Apple 칩 Mac에서 Intel x64 아키텍처용으로 구축된 소프트웨어를 실행할 수 있게 해줍니다. 읽기 이 Apple 지원 스레드에서 자세히 알아보세요.