Spring/[P] AI 기반 사용자 맞춤형 메뉴와 맛집 추천

[SpringBoot/Jython] SpringBoot 에서 Python 사용하기

alsruds 2024. 9. 12. 23:08
⚠️ IntelliJ 를 사용하고 있습니다

1. Build.gradle 의존성 추가
2. Python Interpreter 설정 추가
3. 작동 확인

 

 

· Jython 이란 Python 의 Java 버전으로, Java 언어로만 쓰여졌기 때문에 모든 Java 가상 머신에서 작동한다

 

🏠 What is Jython?

The Jython project provides implementations of Python in Java, providing to Python the benefits of running on the JVM and access to classes written in Java.

 


1. Bulid.gradle 에 의존성 추가하기

dependencies {
	// Jython
	implementation 'org.python:jython-slim:2.7.4rc1'
}

 

이후 gradle build 를 다시 해주시면 적용됩니다

 

 

2. IntelliJ 에 Python Interpreter 설정하기

File > Project Structure
Modules > + > Python 추가

 

추가할 interpreter 가 없으면 기기에 우선 python 을 설치하시면 됩니다

 

 

3. 확인하기

· test.py

def testFunc(a,b):
    print("TEST FUNC")
    c = a + b
    return c

 

· test.java

@RestController
@RequiredArgsConstructor
public class test {
    private static PythonInterpreter intPre;

    @RequestMapping(value = "/test", method = RequestMethod.GET)
    public String getTest() {
    
        // python 함수로 확인
        intPre = new PythonInterpreter();
        intPre.execfile("src/main/java/BabAl/BabalServer/test.py"); // test.py 경로
        intPre.exec("print(testFunc(5,10))");

        // web 으로 확인
        PyFunction pyFuntion = (PyFunction) intPre.get("testFunc", PyFunction.class);
        int a = 10, b = 20;
        PyObject pyobj = pyFuntion.__call__(new PyInteger(a), new PyInteger(b));
        System.out.println(pyobj.toString());

        return pyobj.toString();
    }
}

 

 


📜 참고문서 📜

 

· 의존성 추가

https://aram-su.tistory.com/16

 

[Jython] Java에서 python 실행시키기

스프링 프로젝트에서 python으로 작성한 챗봇을 실행시키고자 한다. Jython을 사용하면 Java에서도 python을 실행시킬 수 있다는 정보를 얻어 한번 시도를 해보았다. build.gradle 파일에 dependency를 추가

aram-su.tistory.com

 

· Python Interpreter 설정

https://ddururiiiiiii.tistory.com/351

 

[intelliJ/인텔리제이] No Python interpreter configured for the module 오류 해결

[오늘의 문제 상황] 인텔리제이에서 파이썬 프로젝트를 가져오려니 No Python interpreter configured for the module 문구가 뜬다. [문제 이유] 파이썬 인터프리터 설정이 없어서 뜨는 것. [해결방법] 파이썬

ddururiiiiiii.tistory.com

 

·  테스트 코드

https://binshuuuu.tistory.com/289

 

[JAVA] Spring 에서 python 사용하기 - jython

이전에 작성한 글에서 jython 을 설치하였습니다. https://binshuuuu.tistory.com/288 불러오는 중입니다... 이제 Spring + Maven 에 jython 을 연동해 봅시다. 1. Pom.xml org.python jython-standalone 2.7.1 * 가지고 있는 버전

binshuuuu.tistory.com