如何为没有源代码的类生成JavaDoc文档?

如何为没有源代码的类生成JavaDoc文档?,java,reflection,documentation,javadoc,Java,Reflection,Documentation,Javadoc,我想在一个jar中生成一些基本的html接口文档(当然没有注释),这些jar中没有源代码。我该怎么做呢 classdoc的旧工具[classdoc][1]http://classdoc.sourceforge.net/ 用于提供此服务的java 1.3中提供了。在我看来,这可以通过使用反射来实现 关于如何在1.6或1.7类上执行这项看似简单的任务,有没有使用javadoc或其他实用程序的想法或示例?可能有自动解决方案,但我不知道。我的最佳选择是手动编写一些代码,生成包含javadoc的虚拟jav

我想在一个jar中生成一些基本的html接口文档(当然没有注释),这些jar中没有源代码。我该怎么做呢

classdoc的旧工具[classdoc][1]http://classdoc.sourceforge.net/ 用于提供此服务的java 1.3中提供了。在我看来,这可以通过使用反射来实现


关于如何在1.6或1.7类上执行这项看似简单的任务,有没有使用javadoc或其他实用程序的想法或示例?

可能有自动解决方案,但我不知道。我的最佳选择是手动编写一些代码,生成包含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]));     
        }     
    }
ArrayList类=新的ArrayList();
JarFile jfile=newjarfile(“您的jar文件名”);
字符串pkgpath=pckgname.replace(“.”,“/”);
对于(枚举项=jfile.entries();entries.hasMoreElements();){
JarEntry元素=entries.nextElement();
if(element.getName().startsWith(pkgpath)
&&元素.getName().endsWith(“.class”){
字符串文件名=element.getName().substring(pckgname.length()+1);
Class.add(Class.forName(pckgname+“+fileName.split(“\\”)[0]);
}     
}
然后,对于每个类,您必须浏览它们的方法,以最终写出与jar文件中的原始类相似的伪类。在代码将虚拟方法写入文件的同时,让它也根据参数和返回类型编写javadoc注释

完成后,使用javadoc从虚拟类生成文档


这可能有点长,但这是我的猜测…

您可以使用
jar-tvf-yourjar.jar
列出类,使用
javap
分解类,它会生成非常清晰的文档。

这可能会帮助您: