查看jar文件中的类、方法、属性等最简单的方法是什么? 我正在寻找一些等价于非常有用的Lutz Roeder .NET Reflector - Java
当前回答
你可以用现在大多数的解压工具打开它们,然后如果你想查看源代码,只需要像DJ 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文件>。如果你的操作系统支持这个。
您的IDE也应该支持这一点。我的IDE (slikeedit)称它为“标记库”。只需为jar文件添加一个标记库,您就应该能够以分层方式浏览类和方法。
使用解压缩的软件。它将以完整的方式为您打开文件夹结构。还允许在存档中编辑,同时保留路径。
毕竟,JAR文件只是ZIP归档文件。
jar -tvf file_name.jar
上面只打印文件的名称。
要查看文件的内容,您可以通过以下方法解压文件夹中的文件:
jar -xvf file_name.jar
这将解压jar文件&把内容放在相同的目录,你正在运行这个。
或者在Windows中将。jar文件重命名为。zip,然后你可以解压缩来提取和查看jar文件的内容。因为jar在内部是一个zip文件。
我个人使用的是JD-GUI。它是一个免费的“反编译器”,因为它允许你看到源代码、类和类中的对象,以及在左侧的树菜单中看到文件结构。但是,它不允许您直接修改类。
jdgui的网站:http://jd.benow.ca/
推荐文章
- 将字节转换为十六进制
- HashSet和HashMap的区别?
- 我如何有效地解析HTML与Java?
- Java构造函数继承
- 如何在Java中将int[]转换为Integer[] ?
- 你能解释一下流的概念吗?
- 导致java.lang.VerifyError错误的原因
- 如何在Java中监控计算机的CPU、内存和磁盘使用情况?
- 如何设置超时在改造库?
- java lambda可以有一个以上的参数吗?
- HashMap -获取第一个键值
- 使用Jackson将JSON字符串转换为漂亮的打印JSON输出
- Android - SPAN_EXCLUSIVE_EXCLUSIVE跨度不能为零长度
- Javadoc @see或{@link}?
- 在准备语句中使用“like”通配符