查看jar文件中的类,方法,属性等最简单的方法是什么?我正在寻找相当于非常有用的Lutz Roeder .NET Reflector - for Java的东西
Tom*_*ine 254
使用JDK,jar -tf将列出jar中的文件.javap将从特定的类文件中提供更多详细信息.
Phi*_*Lho 52
我通常使用7-Zip打开它们...它至少可以查看包和类以及资源.
我是否需要查看方法或字段,我会使用Jad,但当然,最好依靠(好)JavaDoc ...
现在,SO上的某个地方提到了一些Eclipse插件,为了找到一个类所在的jar文件,也许他们可以做更多的事情(即你所要求的).
[编辑]参考SO线程.不是被问到什么,而是以某种方式相关,因此有用:Java:如何知道给定类名的jar文件?
Azu*_*ame 33
我个人使用的是JD-GUI.它是一个免费的"反编译器",因为它允许您查看类中的源代码,类和对象,以及在左侧树状菜单中查看文件结构.但是,它不允许您直接修改类.
JD-GUI的网站:http://jd.benow.ca/
小智 16
通过在IDE中向项目添加jar,通常可以查看方法和字段名称,但不能查看详细的实现.NetBeans可以做到,Eclipse可能,IntelliJ可能等等.您可以直接在IDE中浏览jar结构.
对于查看内容等任何内容,您可以使用:
jar tvf jarfile.jar要访问源代码,您可以使用反编译器(如JAD)或其前端或其他反编译器.如果代码被混淆,那么......
Ani*_*oor 14
jar -tvf file_name.jar
Run Code Online (Sandbox Code Playgroud)
以上只会打印文件的名称。
要查看文件的内容,您可以通过以下方式提取文件夹中的文件:
jar -xvf file_name.jar
Run Code Online (Sandbox Code Playgroud)
这将解压缩 jar 文件并将内容放在您运行它的同一目录中。
或者在 Windows 中将 .jar 文件重命名为 .zip & 然后您可以解压缩以提取和查看 jar 文件的内容。因为 jar 在内部是一个 zip 文件。
Ami*_*wal 13
使用unzip例如,如果你有名称的jar文件unzip -l <jar-file-name>.jar,然后test.jar将列出的jar文件的内容.
根据unzip -l test.jar带选项的命令手册- l.
列出档案文件(短格式).将打印指定文件的名称,未压缩文件大小和修改日期和时间,以及指定的所有文件的总计.如果在定义了OS2_EAS的情况下编译了UnZip,则-l选项还会列出存储的OS/2扩展属性(EA)和OS/2访问控制列表(ACL)的大小的列.此外,还会显示zipfile注释和单个文件注释(如果有).如果文件是从单个案例文件系统(例如,旧的MS-DOS FAT文件系统)存档并且给出了-L选项,则文件名将转换为小写并以插入符号为前缀(^)
你也可以使用7 zip.如果你的操作系统支持这个
小智 9
扩展Tom Hawtin的答案,您可以通过管道列出来过滤掉所需的类或文件:
jar tf my-fat-jar-file.jar | grep filename
这应该适用于bash/zsh和similars,或emacs的eshell.
其他信息:https://docs.oracle.com/javase/tutorial/deployment/jar/view.html
如果你想看看里面有什么,只需重命名为下面的第一个选项..
F2 & Rename to jarfile.zip //使用任何unzipper ......
jar tvf jarfile.jar
jar tf jarfile.jar
如果我理解正确,你不仅要看到类,还要看方法,属性等.我知道可以做到的唯一工具是Eclipse - 如果你向项目类路径添加一个jar,你将能够使用常用的包浏览器浏览其类和方法和属性.
无论如何,这对于一个好的独立Java工具来说是一个好主意
| 归档时间: |
|
| 查看次数: |
316887 次 |
| 最近记录: |