Как создать документацию на основе Sphinx в проекте Jython? - PullRequest
7 голосов
/ 08 февраля 2011

Я работаю над несколькими проектами Jython, используя библиотеки, написанные на Java.Я хотел бы создать хорошую документацию с помощью Sphinx благодаря расширению autodoc.Однако, когда я пытаюсь создать html, я получаю ошибки, потому что autodoc не может найти библиотеки, написанные на Java:

sphinx-build -b html -d _build/doctrees   . _build/html
Running Sphinx v1.0.5
loading pickled environment... done
building [html]: targets for 1 source files that are out of date
updating environment: 0 added, 1 changed, 0 removed
reading sources... [100%] index

/Users/myName/myJythonProject/doc/index.rst:14: (WARNING/2) 
autodoc can't import/find module 'myJythonProject', it reported error: 
"global name 'PoolManager' is not defined",
please check your spelling and sys.path

, где PoolManager - класс Java.

Может кто-нибудь помочь мнеДля решения этой проблемы?

1 Ответ

6 голосов
/ 31 марта 2012

Sphinx может использоваться для документирования проектов Jython, но autodoc не работает для кода, написанного на Java. Функция autodoc импортирует и проверяет модули Python. Нет поддержки для того же самого с классами Java.

Реализация autodoc (или чего-то подобного) для Java кажется выполнимой, но кто-то должен добровольно сделать это. См. Этот комментарий автора Sphinx Георга Брандля: http://www.mail-archive.com/sphinx-dev@googlegroups.com/msg03162.html.

Я нашел некоторую информацию о предлагаемом проекте GSoC 2010 , направленном на реализацию многоязычной поддержки autodoc. Но согласно этой записи в блоге , проект не был завершен. Разработчик решил поработать над другим проектом GSoC.

Хранилище sphinx-contrib не содержит ничего, связанного с autodoc.


Обновление

Существует новое расширение Sphinx под названием javasphinx , которое выглядит интересно. Я не использовал это расширение, но в соответствии с документацией , оно может создавать источники reST из кода Java:

Инструмент javasphinx-apidoc является контрапунктом к инструменту sphinx-apidoc в домене Java. Он может быть использован для создания источника reST из существующих Исходный код Java, помеченный комментариями в стиле Javadoc. Сгенерированный reST затем обрабатывается Sphinx вместе с рукописной документацией.

javasphinx использует другую библиотеку под названием javalang .

Пакеты PyPI:

...