查看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文件?
推荐文章
- 在流中使用Java 8 foreach循环移动到下一项
- 访问限制:'Application'类型不是API(必需库rt.jar的限制)
- 用Java计算两个日期之间的天数
- 如何配置slf4j-simple
- 在Jar文件中运行类
- 带参数的可运行?
- 我如何得到一个字符串的前n个字符而不检查大小或出界?
- 我可以在Java中设置enum起始值吗?
- Java中的回调函数
- c#和Java中的泛型有什么不同?和模板在c++ ?
- 在Java中,流相对于循环的优势是什么?
- Jersey在未找到InjectionManagerFactory时停止工作
- 在Java流是peek真的只是调试?
- Recyclerview不调用onCreateViewHolder
- 将JSON字符串转换为HashMap