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


当前回答

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

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

其他回答

以防有人还不知道这一点,JAR文件就是一个ZIP文件 其中包含程序的类、资源等 元数据。你可以提取一个,看看它是如何组合在一起的。

因此,我使用易于记忆和使用的unzip命令。

解压缩-l <jar-file-name>.jar

例如,如果你有一个名为test.jar的jar文件,那么unzip -l test.jar将列出jar文件的所有内容。

虽然所有其他答案都很好,但在大多数情况下,你必须使用一些软件,如7zip或JDK或其他eclipse工具,而这并不需要你有任何这些大的s/w,它是默认的linux和mac,所以它非常轻量级和方便使用。

你也可以使用zipinfo <你的jar文件>。如果你的操作系统支持这个。

Mac上有Jarzilla

方法名、字段等。

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

只看内容

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

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

源代码

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

我认为Java Decomplier是你最好的选择,你可以从这里下载:http://jd.benow.ca/

我的需求是查看jar中文件(如属性文件)的内容,而不需要实际提取jar。如果有人像我一样到达了这个线程,试试这个命令-

unzip -p myjar.jar myfile.txt

这对我来说很有效!