Я пытаюсь получить проект Eclipse Java с использованием модуля Python (в Eclipse), но я все время получаю сообщение об ошибке, поскольку мой модуль Python не может быть найден. Я следую подходу, описанному в "Окончательном руководстве к Python", "Более подробные индивидуальные объектные объекты". Я думаю, что есть проблема с настройками/настройками пути, но я не могу понять, что именно.
Это сообщение об ошибке:
PYTHONPATH: ['.', '/opt/eclipse/plugins/org.python.pydev.jython_2.2.3.2011100616/Lib'] Exception in thread "main" Traceback (innermost last): (no code object) at line 0 ImportError: No module named building
Путь Python был state.path
из state.path
(где state
- это экземпляр PySystemState
).
До сих пор я определил соответствующий интерфейс Java, реализовал модуль Python и поместил все это в путь к классам. Кроме того, в проекте добавлены как Java, так и PyDev, а также исходная папка Python находится на PYTHONPATH. Я все еще получаю вышеупомянутую ошибку. Нужно ли добавлять исходную папку Python (содержащую модуль) в другое место?
Обновление: как было предложено Fabio (см. Ниже), я добавил файлы bin в Java на путь 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>
Для PyDev в проекте Java вам нужно добавить папку bin в PYTHONPATH (то есть: папка с файлами.class, а не файл с.java файлами).
См. Http://pydev.org/manual_101_project_conf2.html (последняя часть) для правильной ссылки.