Konlpy 사용 시 JPype에러

Konlpy 사용 시 JPype에러

현재 프로젝트를 진행하면서 한국어 형태소 분리가 필요해서 Flask로 Konlpy를 사용을 계획하였다.

오늘 여기서 프로젝트를 진행하면서 Window와 Linux(Ubuntu)상에서 발생했던 오류와 해결방안을 공유하도록 하겠다.

Window

1차적으로 발생했던 문제는 Konlpy모듈을 단순히 pip install konlpy로 사용할 수 있다고 생각했다. 하지만 당연하게 에러가 발생했고 해결방안을 찾아보았다.

구글링을 통해 Java가 설치 후 환경 변수 설정(JAVA_HOME)이 되어있어야 하고(이건 이미 돼있고) JPype를 설치해야 한다고 하더라..그전에 알맞은 버전을 확인하기 위해 python 버전을 확인해야 한다.

필자의 컴퓨터에 설치된 Python 버전은 3.7.9

위 사진과 같이 3.7 버전이므로 JPype도 그에 알맞은 버전을 다운로드하고 설치해 주어야 한다.

사진과 같이 JPype1-1.2.0-cp37m-win amd64.whl을 설치 했다.

설치 후, 해당 파일을 현재 작업 중인 디렉터리로 이동시킨 후 pip install JPype1-1.2.0-cp37m-win amd64.whl을 해주면 된다.

pip freeze 명령어를 통해 설치를 확인할 수 있다. 이렇게 설정하고 실행하면 konlpy는 문제없이 작동된다.

Linux(Ubuntu)

배포를 위해 flask를 도커화 하고 jenkins를 통해 CI/CD를 구축하였다. 하지만 바로 에러가 발생했는데 그 에러는 아래 사진과 같다.

이 에러를 보고 별 이상한 방법까지 다 해봤다... dockerfile내부에 RUN으로 설치도 해보고.. requirements.txt에 경로로 표시되어 있으므로 배포된 디렉터리에 맞게 수정도 해보았지만 결국 안됐다.

본론부터 말하자면 그냥 설치를 안 하면 된다.!(정확히는 잘 모르겠....) konlpy 모듈을 설치하고 dockerfile에 java를 추가로 설치해주니 문제없이 돌아간다.

from http://koyuchang.tistory.com/116 by ccl(A) rewrite - 2021-04-02 01:00:11