Java呼叫python,出現“無法解析的編譯問題,PythonInterpreter無法解析為型別”
阿新 • • 發佈:2019-01-06
在Java專案檔案中,想要呼叫python處理的一些結果,可以使用jython jar包,可以在http://www.jython.org/downloads.html下載最新的jar包來使用,追求穩定的話可以選擇較低一些的版本。
下載後放入專案工程目錄中並配置,編寫了一個測試程式碼如下:
import org.python.util.PythonInterpreter;
import org.python.core.PyException;
public class myTest {
/**
* test
*/
public static void main (String[] args) throws PyException {
PythonInterpreter interp = new PythonInterpreter();
interp.execfile("python/tt.py");
interp.close();
}
}
點選執行後報了一個錯誤:Exception in thread “main” java.lang.Error:無法解析的編譯問題:PythonInterpreter無法解析為型別 語法錯誤……,如下:
根據提示,可以判斷是jython直譯器出了問題,選擇eclipse->Windows->preference->PyDev->Interpreter->Jython Interpreter,點選新建,將下載的jython jar包新增進去,如圖:
完成後 ,再點選執行,就可以出現對python語句的處理了,如圖:
出現了tt.py中的輸出語句,這裡出現了對字元編碼的警告,暫時沒見到有效的方法處理,將版本降低到2.5後則不再提示。