【问题标题】:What java command/binary uses for printing out the readable java bytecode?什么 java 命令/二进制文件用于打印出可读的 java 字节码?
【发布时间】:2014-01-10 03:35:12
【问题描述】:

我尝试打印出可读的 java 字节码以查看 monitorenter 和 monitorexit 以研究死锁和同步指令集,但我不知道应该使用什么 java 命令或二进制文件来获取可读的 java 字节码。

【问题讨论】:

  • javap -c <classname>

标签: java command deadlock bytecode instruction-set


【解决方案1】:

使用javap命令,例如:

javap -v SomeClass.class

示例输出:

19:23:56 (brettw) [dev] hikari$ javap -v HikariPool.class
Classfile /Users/brettw/Documents/dev/HikariCP/core/target/classes/com/zaxxer/hikari/HikariPool.class
Last modified Dec 19, 2013; size 11754 bytes
MD5 checksum 00e0441d0aad3bad1f4e7a67f6043b9c
Compiled from "HikariPool.java"
public final class com.zaxxer.hikari.HikariPool implements com.zaxxer.hikari.HikariPoolMBean
  SourceFile: "HikariPool.java"
  InnerClasses:
     #384; //class com/zaxxer/hikari/HikariPool$1
minor version: 0
major version: 51
flags: ACC_PUBLIC, ACC_FINAL, ACC_SUPER
Constant pool:
#1 = Class              #2            //  com/zaxxer/hikari/HikariPool
#2 = Utf8               com/zaxxer/hikari/HikariPool
#3 = Class              #4            //  java/lang/Object
#4 = Utf8               java/lang/Object
#5 = Class              #6            //  com/zaxxer/hikari/HikariPoolMBean
#6 = Utf8               com/zaxxer/hikari/HikariPoolMBean
...

【讨论】:

  • 你通常想要-c -p。
猜你喜欢
  • 1970-01-01
  • 2014-09-05
  • 2014-04-11
  • 1970-01-01
  • 2021-07-26
  • 2011-07-25
  • 1970-01-01
  • 2013-05-22
  • 2013-01-18
相关资源
最近更新 更多