【问题标题】:Finding information about a Java class without documentation在没有文档的情况下查找有关 Java 类的信息
【发布时间】:2012-08-23 08:16:48
【问题描述】:

作为我正在从事的项目的一部分,我需要使用一个类将序列化数据写入文件,但我看到的只是.jar 文件和一个相当不透明的用法示例。有什么方法可以收集到一些关于它的信息,例如继承的类和公共方法?

【问题讨论】:

标签: java class jar


【解决方案1】:

您可以使用jar xf {jarname} 解压缩jar,然后在相关文件上使用decompiler。它不会给你来源,但你会得到结构、字段名称等。

【讨论】:

  • 如何下载插件?我得到的只是一个法语网站,但我看不到任何“立即下载”按钮:-/
  • @Davz:1. 那是 UI 而不是 (Eclipse) 插件。 2. 它没有回答我的问题:-)
  • 好的,答案如下:当您单击其中一个下载链接时,您最终会进入一个法语网页。大约 10 秒后,会出现一个带有此文本的按钮:Valider et télécharger le fichier 点击下载文件。
  • 完美,谢谢。事实证明,由于某种原因,它只包含一个 Hashtable,并已将 put 重命名为 add
【解决方案2】:

您的 IDE 应该能够告诉您这一切。只需创建一个类的实例并输入
inst. Ctrl+Space

您现在应该会看到公共字段和方法的列表。如果这不起作用,请尝试javap 转储类的 API(也有转储字节码的选项)或像 jad 这样的 Java 反编译器

【讨论】:

  • 我使用 TextMate 而不是 IDE!不过,反编译器听起来很完美。
  • 我强烈推荐一个 IDE。无论需要什么学习曲线,导航代码库的能力都是值得的
  • @BrianAgnew:+1 使用文本编辑器开发软件就像用叉子挖隧道一样。是的,它有效...
【解决方案3】:

使用命令 jar xf "jar_name" 转到您的 java JDK 目录(即 C:\Dev\Java\jdk1.6.0_26\bin)。 比去Download JAD 下载反编译器。然后从解压缩的 jar 中反编译类。

【讨论】:

    猜你喜欢
    • 2018-02-13
    • 1970-01-01
    • 2020-12-30
    • 2011-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-14
    • 1970-01-01
    相关资源
    最近更新 更多