파이썬에서 from konlpy.tag import Okt
을 사용하려고 하는데, "JVM DLL not found" 오류가 발생했습니다.
분명 java 는 설치되어 있었는데 이런 문제가 발생했습니다.
그 해결 과정을 기록합니다.
해결 과정
자바 버전 확인
제일 먼저 자바가 정상적으로 설치되어 있는지 확인했습니다.
/usr/libexec/java_home -V
Matching Java Virtual Machines (2):
11.0.11 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 11" /Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home
1.8.0_292 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 8" /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
저는 AdoptOpenJDK
JDK를 사용하고 있었고, 버전은 8, 11 2개가 설치되어 있었습니다.
버전을 교체해 보기도 하고, 지웠다 설치도 해봤지만 JVM 오류는 계속 발생했습니다.
서치를 좀 해보니 Apple Silicon/M 시리즈에서는 x86 은 호환이 불안정 할 수 있다는 것을 알게 되었습니다.
저의 맥북에 설치된 자바는 AdoptOpenJDK-x86_64
버전이기에 문제가 해결될 수 없는 환경이었고, Arm 버전을 설치해야 했습니다.
새로운 자바 설치
Zulu OpenJDK
는 ARM 기반의 아키텍처를 사용하고 있습니다.
https://www.azul.com/downloads/?os=macos&architecture=arm-64-bit&package=jdk#zulu
본인에게 맞는 자바 버전을 설치하면 되는데, 저는 최신 LTS 이전 버전인 Java 17 을 선택했습니다.
각자의 환경에 맞게 다운로드 하시면 되는데, Macbook 에서는 .dmg
파일을 다운로드 하면 설치가 편합니다.
.dmg
다운로드 후 설치까지 완료하면 환경변수를 추가해야 합니다.
nano ~/.zshrc
으로 에디터를 열어주세요.
# java
#export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)
#export JAVA_HOME=$(/usr/libexec/java_home -v 11)
export JAVA_HOME=$(/usr/libexec/java_home -v 17)
export PATH=$JAVA_HOME/bin:$PATH
저는 기존에 사용하던 버전은 주석처리 했고, 새로 다운로드 한 17버전을 인식하도록 설정했습니다.
java -version
openjdk version "17.0.12" 2024-07-16 LTS
OpenJDK Runtime Environment Zulu17.52+17-CA (build 17.0.12+7-LTS)
OpenJDK 64-Bit Server VM Zulu17.52+17-CA (build 17.0.12+7-LTS, mixed mode, sharing)
이후 자바 버전을 확인 했을 때 openjdk 를 정상적으로 인식했다면 설치 완료입니다.
테스트
from konlpy.tag import Okt
okt = Okt()
이후 저는 문제없이 konlpy
를 사용할 수 있었습니다.
'Development > Environment' 카테고리의 다른 글
HTTPS에서 경고 없이 HTTP 리소스를 호출하는 방법 (0) | 2024.02.05 |
---|---|
Nginx 환경 설정으로 원하는 자원(CSS,JS,이미지)만 캐싱하기 (0) | 2023.10.17 |
메모리가 부족한 AWS Lightsail에서는 스왑 공간을 활용하자 (0) | 2023.08.02 |
AWS Lightsail에서 파이썬 여러 버전 관리 및 사용 :: pyenv (0) | 2023.08.01 |
AWS Lightsail에서 React 빌드&배포 시 멈추는 현상 (메모리 부족) (0) | 2023.07.07 |