2012-12-13 5 views
4

자바에서 파이썬 메서드를 호출하려고 시도하고 매우 간단한 예제를 만들었습니다. 하지만 예외가 있습니다자바에서 파이썬 메서드 호출

내 평 파일 (test.py)

def tmp(): 
    return "test!!!!!" 

내 자바 코드

PythonInterpreter interpreter = new PythonInterpreter(); 
interpreter.exec("import test"); 
PyObject someFunc = interpreter.get("tmp"); 
System.out.println(someFunc); 
PyObject result = someFunc.__call__(); 
String realResult = (String) result.__tojava__(String.class); 
System.out.println(realResult); 

을 그리고 난이 결과를 가지고 선 *의 PyObject 결과 = someFunc에 대한 예외입니다. someFunc이 null이기 때문에 __call __(); *

null 
Exception in thread "main" java.lang.NullPointerException at 
    com.testing.Test.test(Test.java:936) at 
    com.testing.Test.main(Test.java:96) 

어떤 생각?

+0

'interpreter.get ("test.tmp"); – sloth

답변

2
interpreter.exec("from test import tmp"); 
PyObject someFunc = interpreter.get("tmp");