# javap 操作

# javac -g 操作

解析字节码文件得到的信息中,有些信心 (局部变量表,指令和代码行偏移量映射表,常量池中方法的参数名称等等) 需要在使用 javac 编译成 class 文件时,指定参数才能输出

# javap 参数说明

  • -version 版本信息,就是当前 javap 所在的 jdk 的版本信息,不是 class 在哪个 jdk 下生成的

  • -public 仅显示公共类和成员

  • -protected 显示受保护的 / 公共类和成员

  • -p -private 显示所有类和成员

  • -package 显示程序包 / 受保护的 / 公共类和成员 (默认)

  • -sysinfo 显示正在处理的类的系统信息 (路径,大小,日期,MD5, 源文件名)

  • -constants 显示静态最终常量

  • -s 输出内部类型签名

  • -l 输出行号和本地变量表

  • -c 对代码进行反汇编

  • -v -verbose 输出附加信息 (包括行号,本地变量表,反汇编等详细信息)

  • -classpath <path> 指定查找用户类文件的位置

  • -cp <path> 指定查找用户类文件的位置

更新于 阅读次数