安装Docker Desktop
官网下载Docker Desktop并安装, Developers - Docker
启动镜像 docker run -d cyliang1113/debug-jvm-vscode:0.1
安装VS Code
官网下载VS Code并安装, Visual Studio Code - Code Editing. Redefined
VS Code安装几个插件:
- Remote Development (用于连接启动的docker容器并进行开发)
- C/C++ Extension Pack (C++开发包)
- Makefile Tools
开发jvm源码
VS Code远程资源管理中选Containers, cyliang1113/debug-jvm-vscode:0.1, Attach to Containers, 会打开一个新的窗口.
在新的窗口中打开jvm源码的目录.
开始调试
.vscode/launch.json文件中定义调试
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) 启动",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/build/linux-x86_64-normal-server-slowdebug/jdk/bin/java",
"args": ["HelloWorld"],
"stopAtEntry": false,
"cwd": "${workspaceFolder}/build/linux-x86_64-normal-server-slowdebug/jdk/bin/",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"description": "将反汇编风格设置为 Intel",
"text": "-gdb-set disassembly-flavor intel",
"ignoreFailures": true
}
]
}
]
}
在main函数里打上断点, vscode运行和调试中点击绿色开始按钮