형태소 분석기 Okt 설치를 하고 사용을 하려던 중 다음과 같은 에러를 만났다.
jvmnotfoundexception: no jvm shared library file (jvm.dll) found. try setting up the java_home environment variable properly.
여러 블로그를 찾아보고 난 후 문제는 _jvmfinder에 있는
def _get_from_java_home(self):
JAVA_HOME = os.getenv("JAVA_HOME")
JAVA_HOME의 환경변수 주소를 받아오는 과정에서 환경변수의 경로가 등록되지 않았기 때문이다.
해결법은 3가지가 있다
JAVA SDK 를 설치하고
JPype를 설치하였다는 가정 하에
해결법1)
C:\ProgramData\Anaconda3\Lib\site-packages\jpype 경로 (나의 경로임)
_jvmfinder 속의 JAVA_HOME 주소를 "C:\Program Files\Java\jdk-19\bin" 로설정한다
JAVA_HOME = "C:\Program Files\Java\jdk-19\bin" 과 같이 설정한다
하지만 나는 여기서도 동일한 에러가 떴다
해결법2)
import os
print("JAVA_HOME" in os.environ)
대부분의 케이스가 위의 코드를 실행하면 False가 나올것이다
os.environ['JAVA_HOME'] = r'C:\Program Files\Java\jdk-19\bin\server'
다음과 같이 환경변수를 지정해주면
True값이 뜨는 것을 볼 수 있을 것이다
사실 이 해결법은 기존 경로에 bin\server 경로까지 추가해준 것이다
잘 작동한다
오늘도 에러를 찢어버렸다
'Development > Debug' 카테고리의 다른 글
여러가지 디버깅 for python (1) | 2024.02.10 |
---|---|
가상환경 .venv에서 설정한 인터프리터가 소환되지 않을 때 (0) | 2023.10.08 |
scikit-surprise 패키지 설치 오류 ( Running setup.py install for scikit-surprise: finished with status 'error' ) (1) | 2023.03.12 |