将Java类文档从代码读入GUI

时间:2013-08-23 14:56:22

标签: java javadoc

我今天的问题是我有一个界面另一个程序的GUI。我的GUI中有一个文本区域,我想显示用户选择的特定组件的类文档。

示例:用户选择“协议”设置我希望它显示该“协议”的JavaDoc。

如何识别正确的Javadoc并在文本区域内显示它?

3 个答案:

答案 0 :(得分:2)

  

.. Javadoc ..在文本区域内展示它?

请勿使用JTextArea,而应使用JEditorPane。后者将呈现HTML。

答案 1 :(得分:1)

我会建议3种可能的方法:

  • 作为构建的一部分,正常创建Javadoc HTML,然后将其包含在您的可部署中,并让您的GUI使用某种嵌入式浏览器(例如.WebKit)
  • 研究其他GUI是如何完成的,例如来自Eclipse的Javadoc View,或使用a project which extends Eclipse Javadoc View
  • 使用Java源代码(Javadoc)parsing library / tool,例如QDox

QDox的示例代码:

JavaDocBuilder builder = new JavaDocBuilder();
builder.addSource(new FileReader("MyFile.java"));

答案 2 :(得分:1)

JavaDoc不是Java程序的一部分。因此,无论您使用何种方法,都必须将资源与程序捆绑在一起。

所以你有两种可能性:

  1. 使用javadoc生成文档并捆绑结果。通过查看生成的文件,很容易看到如何从类名映射到html页。 JavaDoc文档(默认doclet的文档更精确)包含更详细的描述

  2. 如果您想要即时生成文档,则必须将源代码与应用程序捆绑在一起。此外,您的应用程序必须在JDK而不是普通的JRE中运行才能获得JavaDoc。

  3. 请参阅http://docs.oracle.com/javase/7/docs/technotes/guides/javadoc/standard-doclet.html

      

    以编程方式运行标准文档

         

    Javadoc工具具有一个带有公共方法的编程接口   从另一个用Java语言编写的程序调用Javadoc工具。   这些方法位于lib / tools.jar中的com.sun.tools.javadoc.Main类中。 ...

         

    public static int execute(String programName,PrintWriter errWriter,PrintWriter warnWriter,     PrintWriter noticeWriter,String defaultDocletClassName,String [] args)

    这个执行方法超载了变量,参数更少。