Мой проект настроен следующим образом: он запускается в классе Java, который использует метод PythonInterpreter.initialize для установки моего пути python к каталогу lib jython и каталогу, содержащему "org / curious / neofelis / мои файлы jython". Затем я создаю PythonInterpreter и заставляю его выполнять мой основной файл jython.
Я думаю, это неортодоксально, но оно работает, но когда я попытался использовать Popen, я получил эту ошибку
File "/home/steven/jython/Lib/subprocess.py", line 1163, in _get_handles
elif isinstance(stdout, org.python.core.io.RawIOBase):
При попытке воспроизвести эту ошибку я обнаружил, что могу это сделать
from org.python.util import PythonInterpreter
#A PythonInterpreter running inside a PythonInterpreter!
interpreter = PythonInterpreter()
interpreter.exec("print 3+6");
sys.exit(0)
Но это не летало
import org
interpreter = org.python.util.PythonInterpreter()
interpreter.exec("print 3+6");
sys.exit(0)
File "/home/steven/neofelis/src/main/jython/org/curious/neofelis/main.py", line 34, in <module>
interpreter = org.python.util.PythonInterpreter()
AttributeError: 'module' object has no attribute 'python'