查看jar文件中的类、方法、属性等最简单的方法是什么? 我正在寻找一些等价于非常有用的Lutz Roeder .NET Reflector - Java
当前回答
如果你在windows和使用powershell,你正在寻找一个文件在一个jar,你可以这样做:
jar -tf .\[JAR_NAME] | where {$_ -match "[FILENAME]"}
其他回答
我已经将windows中的默认操作设置为“用WinZip打开”。这使得将jar作为存档来管理变得很容易。您甚至可以手动添加/删除文件。
我使用JarExplorer或JarVisualizer。
一种方法是在“Package explorer”中打开透视图。这样做,您可以看到带有类详细信息的jar的结构。为此,使用包资源管理器检查项目中的库文件夹。
窗口>>视图>>另一个>>Java>>Package Explorer
另一种方法是,您可以将JarPlug作为eclipse插件使用。这在eclipse/springsource中工作
http://jar-plug.sourceforge.net/
我通常用7-Zip打开它们…它至少允许看到包、类和资源。 如果我需要看到方法或字段,我会使用Jad,但当然,最好依赖(好)JavaDoc…
现在,在SO的某个地方提到了一些Eclipse插件,为了找到一个类位于哪个jar文件中,也许它们可以做更多的事情(例如。你所要求的)。
[编辑]参考SO线程。不是问什么,但在某种程度上相关,因此有用:Java:我如何知道给定一个类名使用哪个jar文件?
扩展Tom Hawtin的回答,你可以通过管道过滤出所需的类或文件:
Jar tf my-fat-jar-file.jar | grep文件名
这应该适用于bash/zsh和类似文件,或emacs的shell。
更多信息:https://docs.oracle.com/javase/tutorial/deployment/jar/view.html
推荐文章
- 在流中使用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