Извлечь список всех методов из JavaDoc - PullRequest
0 голосов
/ 06 февраля 2012

У меня есть пакет javadoc, и я хочу извлечь список всех методов, описанных внутри.что-то вроде:

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

List<String> listMethods=ExtractAPI(path);

Я не против того, чтобы язык делал это, но я думаю, что у java есть встроенные функции для этого.

Я попытался прочесть dummntation javadoc:

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

Но не мог достаточно ясно понять, если это возможно, и если да, то как именно это сделать.

Спасибо!

1 Ответ

3 голосов
/ 06 февраля 2012

Самое быстрое решение - распаковать банку и сделать что-то вроде этого:

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();
}

Выход может отличаться. Для других вариантов декомпиляции введите javap -help.

Если вам нужен специально отформатированный вывод (который не может быть получен из вышеприведенного, который имеет довольно регулярный синтаксис, поэтому легко манипулируется), тогда javap может быть не лучшим вариантом. Но поскольку вы отказываетесь указать цель вопроса, невозможно понять, чего вы пытаетесь достичь.

...