我有一些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
但是如果有可能的话就无法理解清楚,如果是的话,究竟是怎么做的。
谢谢!
答案 0 :(得分:3)
最快的解决方案是解压缩jar然后执行以下操作:
find . -name "*.class" | sed s/\.class// | xargs javap -private
这将为jar中的每个.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
可能不是最佳选择。但既然你拒绝陈述问题的目的,就不可能知道你想要完成什么。