graalvm学习(九) 如何使用ide debugger graal源码

调试vm模块

  1. 新建一个java文件
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命令
bash 复制代码
$ 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的命令

bash 复制代码
$ cd graal/substratevm

$ mx intellijinit #执行之后使用ide打开substratevm目录

$ mx build

$ javac HelloWorld.java

$ mx native-image --debug-attach HelloWorld

$ 点击ide的debugger按钮
相关推荐
唐青枫4 分钟前
Java Lambda 表达式详解
java
明天过后ww1 小时前
MySQL SQL 优化的10个关键方向
java·数据库·spring
失落的多巴胺1 小时前
Linux学习笔记7:关于i.MX6ULL主频与时钟配置原理详解
笔记·学习
飞天小牛肉1 小时前
26届Java暑期实习面经,腾讯视频一面
java·面试·秋招·校招
CN.LG1 小时前
Java List<JSONObject> 中的数据转换为 List<T>
java·开发语言
风铃儿~1 小时前
Elasticsearch 从入门到实战:文档聚合操作及总结
java·elasticsearch·微服务
爱喝热水的呀哈喽2 小时前
Java collection实例电影尝试
java·windows·python
小画家~2 小时前
第十八:GC 垃圾回收
java·开发语言·jvm·golang
python_chai3 小时前
Python核心数据结构详解:元组、集合与字典
java·数据结构·python
老华带你飞4 小时前
医药垃圾分类管理系统|基于SSM+vue医药垃圾分类管理系统的系统设计与实现(源码+数据库+文档)
java·数据库·vue·毕业设计·论文·ssm·医药垃圾分类管理系统