맥북 Python에서 Jpype 사용하기 위한 삽질

     

목차

     

    🤦‍♂️ 사건의 시작 

    나이스평가정보에서 제공하는 휴대폰본인인증을 사용하기 위해, 해당 업체로부터 라이브러리를 받았다.

     

    제공 모듈 : ASP, PHP, JSP

     

    아니 ㅋㅋㅋㅋ 지금 무슨 2000년대냐고요.. JSP는 인정,, ASP랑 PHP 같은 옛날 패키지 누가 쓰냐구요 ㅋㅋㅋㅋㅋ 

    더 웃긴건 회사 소개 페이지에 모든 언어 플랫폼 지원 모듈 제공! 이라고 광고해 놓고, 이 정도면 계약 사기 아님? ㅋㅋ 

     

    그래서 혹시 담당 개발자한테 전화로 "다른 언어는 제공 안 하나요?" 물어봤더니 "네 없어요~" ㅋㅋㅋ 

    거의 일하기 싫은 공무원이 다른 부서에게 핑퐁하듯이 퉁명스러운 대답만 돌아왔다. 하- 갑자기 증권회사에서 일하던 그날들이 잠깐 스쳐 지나갔지만, 세상에 이렇게 의욕 없고 놀고먹는 개발자도 있어야지~라는 생각에 그냥 넘어가기로 했다.

     

    일단 JSP로 제공된 jar파일을 어떻게 해보는 것으로..

     

    🧑‍💻 jpype사용하기 

    옛날에 자연어 처리할 때 konlpy 엄청 사용했었는데, 요 라이브러리가 jpype를 사용해서 java를 python에서 돌리던 패키지였다. 마찬가지로 jpype를 사용하면 python에서 java패키지 사용이 가능하다.

     

    가벼운 마음으로 .jar파일을 프로젝트에 복사한 뒤, pip install JPype1로 jpype를 설치했다.

    jpype를 이용해 jvm을 시작하기 위해선 jpype.startJVM(classpath={.jar 경로})를 입력하면 된다.

     

    바로 에러 뜨쥬?

     

    하지만 바로 에러가 뜨는데,, 검색해보면 여러 가지 문제가 있는데 맥북 M1이라서 문제라고 한다(실제로 M3사용 중이긴 하다)

    근데 살펴보니 CPU문제는 아닌것 같고 실제로 JAVA_HOME경로가 안 잡혀있다는 것을 알았는데,,,,

     

     

    🏠 asdf로 설치된 java path 설정

    asdf를 이용해 java를 깔았는데 이상하네? 하고 검색해보니 asdf에서 java_home을 설정하기 위해 추가로 해줘야 하는 것이 있다.

     

    set-java-home을 해줘야함

    홈 경로에서 ~/.asdf/plugins/java에 가보면 set-java-home이라는 쉘들이 많은데, 여기서 컴퓨터에 설치된 쉘을 실행해 주면 된다. 

    나는 zsh이 설치되어있기 때문에 set-java-home.zsh에 있는 내용을 복사해서 ~/.zshrc에 붙여 넣기 해주었다.

     

    .zshrc 맨아래 복사

     

    이제 터미널이 실행될때 java_home을 알아서 지정할 것이다.

     

     

     

    🧑‍💻 재도전

    JAVA_HOME 경로 확인하고 재도전..

     

    바로 실행되쥬~?

     

    잘된다. 

     

    참고로 오라클 JAVA가 m1에서 잘된다고 해서 oracle java를 설치했다.

     

    oracle java

     

    원래는 다른 java를 쓰고 있긴 했었는데,, 이거 할 때만 이걸로 해야지 뭐 😶

     

     

    반응형

    댓글

    Designed by JB FACTORY