3

ソースを持っていない jar 内のクラス ファイルの基本的な html インターフェイス ドキュメント (もちろんコメントなし) を生成したいと思います。どうすればこれを行うことができますか?

java 1.3 で利用可能だった classdoc [Class Doc][1]http://classdoc.sourceforge.net/ の古いツールは、このサービスを提供するために使用されていました。これは、リフレクションを使用して実行できるようです。

1.6 または 1.7 クラスでこの一見単純なタスクを実行する方法について、javadoc または別のユーティリティを使用したアイデアや例はありますか?

4

2 に答える 2

1

自動化されたソリューションがあるかもしれませんが、私は知りません。私の最善の策は、javadoc を含むダミーの Java ファイルを生成するコードを手動で記述することです。次のような方法で jar ファイルを参照する必要があります。

ArrayList<Class> classes = new ArrayList<Class>();    
    JarFile jfile = new JarFile("your jar file name");
    String pkgpath = pckgname.replace(".", "/");     
    for (Enumeration<JarEntry> entries = jfile.entries(); entries.hasMoreElements();) {
        JarEntry element = entries.nextElement();     
        if(element.getName().startsWith(pkgpath)
            && element.getName().endsWith(".class")){     
            String fileName = element.getName().substring(pckgname.length() + 1);     
            classes.add(Class.forName(pckgname + "." + fileName .split("\\.")[0]));     
        }     
    }

次に、クラスごとにメソッドを参照して、jar ファイル内の元のクラスのように見えるダミー クラスを最終的に書き留める必要があります。コードはダミー メソッドをファイルに書き込みますが、パラメーターと戻り値の型に基づいて javadoc コメントも書き込むようにします。

これが完了したら、javadoc を使用して、ダミー クラスからドキュメントを生成します。

これを行うには少し時間がかかるかもしれませんが、これが私の推測です...

于 2012-05-15T07:54:05.637 に答える
1

jar tvf yourjar.jarクラスを一覧表示したり、クラスを逆アセンブルしたりするために使用できjavap、非常に読みやすいドキュメントが生成されます。

于 2012-08-06T13:09:49.670 に答える