如何测量类文件中的字节码指令数量?

3

我已经计算出每个类文件的平均圈复杂度。 我想知道如何使用Eclipse测量每个类文件中的字节码指令数量?

2个回答

3
我不确定你是否可以轻松地从Eclipse中完成这个操作,但是您可以使用 javap -c 命令来获取类文件的反汇编信息。如果您只关心每个方法的指令数量,那么将其封装成脚本也不应该太难。
例如:
 $ javap -c Test
Compiled from "Test.java"
public class Test extends java.lang.Object{
public Test();
  Code:
   0:   aload_0
   1:   invokespecial   #1; //Method java/lang/Object."<init>":()V
   4:   return

public static void main(java.lang.String[]);
  Code:
   0:   getstatic   #2; //Field java/lang/System.out:Ljava/io/PrintStream;
   3:   ldc #3; //String Hello
   5:   invokevirtual   #4; //Method java/io/PrintStream.println:(Ljava/lang/String;)V
   8:   return

}

谢谢您。我怎样才能从Eclipse中实现这个? - Joeblackdev
你可以将javap配置为外部工具。 - Sean Patrick Floyd
1
@Joeblackdev:https://dev59.com/questions/9Gw05IYBdhLWcg3wv0R6。 - Mat

3

您可以像Mat提到的那样使用javap,或者使用Commons BCEL以编程方式访问字节码。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接