2012-02-06 16 views
0

私はjavadocのいくつかのパッケージを持っており、内部に追加されたすべてのメソッドのリストを抽出したいと思います。以下のようなsomethong:JavaDocからすべてのメソッドのリストを抽出します

path="C:\Doc\idex.html"; 

List<String> listMethods=ExtractAPI(path); 

私はそれを行うには、言語を気にしないが、私はJavaがそれのための組み込みの機能を持っていることを推測します。

私はのjavadoc doumntation読んでみました:

http://docs.oracle.com/javase/1.5.0/docs/guide/javadoc/doclet/overview.html

をしかし、それが可能であれば十分に明確に理解し、それを行う方法を正確にそうでない場合があります。

ありがとうございます!

find . -name "*.class" | sed s/\.class// | xargs javap -private 

これは、瓶の中の各.classファイルに対して次のような出力を生成します:

Compiled from "SHTMLPanelSingleDocImpl.java" 
class com.lightdev.app.shtm.SHTMLPanelSingleDocImpl extends com.lightdev.app.shtm.SHTMLPanelImpl{ 
    public com.lightdev.app.shtm.SHTMLPanelSingleDocImpl(); 
    protected void initDocumentPane(); 
    protected void initActions(); 
} 

出力は変更される場合があります

+0

IIRCはマークされていないので、あなたは虚構なHTML XPathの世界のために標準のJavadocドックレットによって作成されたドキュメントを抽出しているなら、その構造を知る必要があります。ソースを表示するだけです。 jarファイルやクラスファイルはありませんか?あなたの目的は何ですか? –

+0

@Dave:私はjavadocとjarファイルを持っています – sara

+0

alllクラスのすべてのメソッド?このリストを持つことのメリットは何ですか? – home

答えて

3

最短ソリューションは、このような何かをjarファイルを解凍することです。その他の逆コンパイルオプションの場合は、javap -helpと入力します。

特殊な書式の出力が必要な場合(これは上記のものではありませんが、かなり規則的な構文で簡単に操作できます)、javapが最適なオプションではない場合があります。しかし、あなたは質問の目的を述べることを断るので、あなたが達成しようとしていることを知ることは不可能です。

+0

+1; verrry nice – home

+0

あなたはWindowsを使用していますか?コマンドライン?それは私には役に立ちません – sara

+0

@sara Windowsを実行している場合は、Cygwinをインストールしてください。それ以外の場合は、同じことを手動で行いますが、手動で行います。また、「うまくいかない」と言っても失敗を診断するものは何もありません。 –

関連する問題