查看jar文件中的类、方法、属性等最简单的方法是什么? 我正在寻找一些等价于非常有用的Lutz Roeder .NET Reflector - Java


当前回答

Mac上有Jarzilla

其他回答

我通常用7-Zip打开它们…它至少允许看到包、类和资源。 如果我需要看到方法或字段,我会使用Jad,但当然,最好依赖(好)JavaDoc…

现在,在SO的某个地方提到了一些Eclipse插件,为了找到一个类位于哪个jar文件中,也许它们可以做更多的事情(例如。你所要求的)。

[编辑]参考SO线程。不是问什么,但在某种程度上相关,因此有用:Java:我如何知道给定一个类名使用哪个jar文件?

大多数人都正确地回答了这个问题,如果你甚至不知道你的jar路径在哪里,或者你的JDK路径在每台主机上都不一样,这里有一个linux解决方案

$(find / -type f -name "jar" 2>&1 |grep '/JDK' |head -1 ) tf FULLY_QUALIFIED_NAME_TO_YOUR_FILE

杰德是笨拙的,不再维持。我已经切换到“Java反编译器”,它有一个光滑的UI,并支持新的语言功能。

不过,我使用过的每一个反编译器都会遇到无法成功反编译的代码。对于这些人,它有助于理解由标准JDK工具javap生成的反汇编Java字节代码。

方法名、字段等。

通过向IDE中的项目添加jar,您通常可以看到方法和字段名,但看不到详细的实现。NetBeans可以,Eclipse可以,IntelliJ也可以,等等。您可以在IDE中直接浏览jar结构。

只看内容

对于任何事情,比如查看内容,你可以使用:

Jar TVF Jar file. Jar Winzip或任何压缩工具

源代码

要访问源代码,您可以使用一个反编译器,如JAD或它的一个前端或另一个反编译器。如果代码被混淆了,那么…

这个罐子探索者足够好了。 支持三种反编译器类型:JD、Procyon和Fernflower。 允许在任何java存档中搜索文件和副本。 用户还可以通过D&D文件修改jar,并编辑一些非类文件。