7

Java で記述されたライブラリを使用して、いくつかの Jython プロジェクトに取り組んでいます。autodoc 拡張機能のおかげで、Sphinx を使用して優れたドキュメントを作成したいと考えています。ただし、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 クラスです。

誰でもこの問題を解決するのを手伝ってもらえますか?

4

1 に答える 1

6

Sphinx は Jython プロジェクトの文書化に使用できますが、autodocは Java で記述されたコードでは機能しません。autodoc 機能は、Python モジュールをインポートして検査します。Java クラスで同じことを行うことはサポートされていません。

Java に autodoc (または類似のもの) を実装することは実現可能に思えますが、誰かが自発的にそれを行う必要があります。Sphinx の作成者である Georg Brandl による次のコメントを参照してください: https://www.mail-archive.com/sphinx-dev@googlegroups.com/msg03162.html

autodoc の多言語サポートの実装を目的とした提案された GSoC 2010 プロジェクトに関する情報を見つけました。しかし、このブログ投稿によると、プロジェクトは完了していません。開発者は、別の GSoC プロジェクトで作業することを選択しました。

sphinx-contrib リポジトリには、autodoc に関連するものは何も含まれていません。


アップデート

javasphinxと呼ばれる新しい Sphinx 拡張機能があり、興味深いものです。私はこの拡張機能を使用していませんが、ドキュメントによると、Java コードから reST ソースを生成できます。

このツールは、Java ドメイン内のjavasphinx-apidocツールとは対照的です。sphinx-apidocJavadoc スタイルのコメントでマークアップされた既存の Java ソース コードから reST ソースを生成するために使用できます。生成された reST は、Sphinx によって手書きのドキュメントと一緒に処理されます。

javasphinx は javalang と呼ばれる別のライブラリを利用します

PyPI パッケージ:

于 2012-03-30T21:23:25.513 に答える