#java #python #eclipse #jython #pydev
#java #python #eclipse #jython #pydev
Вопрос:
Я пытаюсь запустить проект Eclipse Java с использованием модуля Python (в Eclipse), но я продолжаю получать сообщение об ошибке, в котором говорится, что мой модуль Python не найден. Я следую подходу, описанному в окончательном руководстве по Python «Более подробные фабрики объектов «Один к одному». Я думаю, что есть проблема с настройками конфигурации / пути моего проекта, но я не могу понять, что именно.
Это сообщение об ошибке:
PYTHONPATH: ['.', '/opt/eclipse/plugins/org.python.pydev.jython_2.2.3.2011100616/Lib'] Исключение в "основной" трассировке потока (самой последней внутренней): (нет объекта кода) в строке 0 Ошибка импорта: нет модуля с именем building
Путь к Python был получен из state.path
(где state
является экземпляром PySystemState
).
До сих пор я определил соответствующий интерфейс Java, реализовал модуль Python и поместил все это в classpath. Кроме того, в проект добавлена природа Java и PyDev, а также папка с исходным кодом Python находится на PYTHONPATH . Я все еще получаю вышеупомянутую ошибку. Нужно ли мне добавлять исходную папку Python (содержащую модуль) где-то еще?
Обновление: как было предложено Fabio (см. Ниже), я добавил файлы Java bin в путь Python и удалил исходные файлы Java. Это ничего не решило, поэтому вот мои файлы конфигурации проекта.
Моя конфигурация PyDev:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?eclipse-pydev version="1.0"?>
<pydev_project>
<pydev_property name="org.python.pydev.PYTHON_PROJECT_INTERPRETER">jython</pydev_property>
<pydev_property name="org.python.pydev.PYTHON_PROJECT_VERSION">jython 2.7</pydev_property>
<pydev_pathproperty name="org.python.pydev.PROJECT_SOURCE_PATH">
<path>/SampleJythonIntegration/pysrc</path>
<path>/SampleJythonIntegration/bin</path>
</pydev_pathproperty>
</pydev_project>
Моя конфигурация Java:
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>SampleJythonIntegration</name>
<comment></comment>
<buildSpec>
<buildCommand>
<name>org.python.pydev.PyDevBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.python.pydev.pythonNature</nature>
</natures>
</projectDescription>
Ответ №1:
Для PyDev в проекте Java вам необходимо добавить папку bin в PYTHONPATH (т. Е. Папку с файлами .class, а не с файлами .java).
Смотрите: http://pydev.org/manual_101_project_conf2.html (последняя часть) для правильной ссылки.
Комментарии:
1. сделал это, однако мой интерфейс Java по-прежнему не может быть найден классом python, реализующим подобное. любые другие предложения, возможно, основанные на измененных вопросах? большое спасибо!