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


当前回答

我个人使用的是JD-GUI。它是一个免费的“反编译器”,因为它允许你看到源代码、类和类中的对象,以及在左侧的树菜单中看到文件结构。但是,它不允许您直接修改类。

jdgui的网站:http://jd.benow.ca/

其他回答

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

unzip -p myjar.jar myfile.txt

这对我来说很有效!

您的IDE也应该支持这一点。我的IDE (slikeedit)称它为“标记库”。只需为jar文件添加一个标记库,您就应该能够以分层方式浏览类和方法。

我已经将windows中的默认操作设置为“用WinZip打开”。这使得将jar作为存档来管理变得很容易。您甚至可以手动添加/删除文件。

方法名、字段等。

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

只看内容

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

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

源代码

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

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

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

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