当前位置: 代码迷 >> java >> 是否可以打印出正在运行的行式Java类
  详细解决方案

是否可以打印出正在运行的行式Java类

热度:106   发布时间:2023-07-17 20:11:44.0

我正在运行一个Java项目,该项目将Java类字节码作为输入并对其执行许多操作。 我要执行的操作之一是要指定要从输入Java类中打印出来的行号。

为了澄清这一点,该方法应类似于:

public String getLine(int lineNumber){
   String line = //here should be the code that takes the line number and return the line from the Java class 
   return line;
}

那有可能吗? 我已经搜索了很长时间,但是找不到解决方案。

您在执行此操作时遇到一些问题:

  • 由于要读取字节码,因此只能打印出不是Java源代码的字节码!
  • 大多数时候,一个Java源代码命令会编译为多个字节码命令。
  • 如果要从中获取Java代码,则必须解析字节码命令并将其反编译。 但是,因此您必须知道您是atm的命令。 我看不到有什么办法。

您能指定更精确的方法吗?

  相关解决方案