graalvm学习(九) 如何使用ide debugger graal源码
作者:mmseoamin日期:2024-01-21

调试vm模块

  1. 新建一个java文件
public class HelloWorld
{
    public static int addwj(int x, int y) {
        return x + y;
    }
    public static void main(String[] args) {
        int lastSum = 0;
        for (int i = 0; i < 100000; i++) {
            lastSum = addwj(i, 2);
        }
        System.out.println("Sum from 0 to 4999: " + lastSum);
    }
}
  1. 执行mx命令
$ cd graal/compiler
$ mx intellijinit # 如果是eclipse可以换一下命令,或者直接ideinit
$ 使用ide打开graal/compiler目录
$ graal/vm #切换到vm目录
$ mx -p ../compiler -d vm \
    -XX:+EnableJVMCI \
    -XX:+UseJVMCICompiler \
    HelloWorld.java
$ 点击ide的debug按钮,可以看到HelloWorld文件被执行了

调试native-image的命令

$ cd graal/substratevm
$ mx intellijinit #执行之后使用ide打开substratevm目录
$ mx build
$ javac HelloWorld.java
$ mx native-image --debug-attach HelloWorld
$ 点击ide的debugger按钮