【问题标题】:Accessing information about Java libraries programmatically以编程方式访问有关 Java 库的信息
【发布时间】:2012-01-26 10:41:49
【问题描述】:

我想为 Java 编写玩具 IDE,所以我就一件特别的事情提出了一个问题,希望能帮助我开始。

我在 swing 上实现了编辑器,并且里面有一些文本。有例如:

import java.util.List;

现在我需要一种方法将“java.util.List”字符串发送到一个方法,该方法返回我可能需要的所有信息,包括 JavaDoc 文档。

那么是否有任何工具可以使用库设置类路径,它可以解析我发送的每个字符串并尝试查找是否有任何类/接口以及要返回的文档?

【问题讨论】:

    标签: java ide javadoc


    【解决方案1】:

    那么是否有任何工具可以使用库设置类路径,它可以解析我发送的每个字符串并尝试查找是否有任何类/接口以及要返回的文档?

    AFAIK,不。没有这样的独立工具或库。您将需要自己实现它。 (不要期望编写 Java IDE 很简单……甚至是“玩具”。)

    【讨论】:

      【解决方案2】:

      库将有类文件,没有 javadocs.. 所以不清楚你想做什么。

      有许多字节码工程工具可以分析和提取类文件中的信息。例如asmbcelJavassist 允许同时处理源代码和字节码,因此可能接近您的需要。

      【讨论】:

        【解决方案3】:

        您可以使用 html parser 使用类的完整路径从网络获取 javadoc 和其他信息(包括为每个类构建正确 URL 的包名称)。这当然取决于您使用的 java 版本。
        您还可以使用 java 中的 javadoc 工具从 java 源文件(可以从 Web 下载)生成所需的文档。该工具的源代码也可以帮助您。见http://java.sun.com/j2se/javadoc/faq/#developingwithjavadoc
        最后,如果您需要基于程序中运行时类型的信息,您可能需要检查reflection 功能。

        【讨论】:

          【解决方案4】:

          首先你需要知道How to print imported java libraries?。然后下载java API文档here。找到导入的库后,打开 inputStream 以读取适当的 HTML 文件。 注意!此技术仅在从 jdk 导入时有效。

          【讨论】:

            猜你喜欢
            • 2021-10-27
            • 2015-02-03
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-02-26
            • 2014-01-27
            • 2015-10-16
            • 1970-01-01
            相关资源
            最近更新 更多