使用CLion调试OpenJDK12源码
目录
1、调试环境
- Workstation 14 Pro
- Ubuntu18.04 LTS
- OpenJDK12(编译自己的OpenJDK12)
- CLion(我下载的是CLion-2019.3.3.tar.gz)
2、安装CLion
下载安装包CLion-2019.3.3.tar.gz,放到/home目录下,解压“sudo tar -zxvf CLion-2019.3.3.tar.gz ”后进入目录“clion-2019.3.3/bin”
运行“./clion.sh”进入安装界面
我最后选择试用30天的,就安装完成了。
3、源码调试
CLion安装后,新建一个项目,选择“New CMake Project from Sources”,在源码文件夹中填入OpenJDK源码根目录,此时,CLion已经自动选择好了需要导入的源码,如图所示。点击OK按钮就会导入源码并自动创建好CMakeLists.txt文件。
这份自动生成的CMakeLists.txt并不能直接使用,OpenJDK本身也没有为任何IDE提供支持,但如果只是为了能够在CLion中跟踪、阅读源码,而不需要修改重新编译的话:
- (1)直接在Run/DebugConfigurations中增加一个CMake Application
- (2)然后Executable选择我们刚才编译出来的FastDebug或者SlowDebug版的java命令
- (3)运行参数加上-version或者某个Class文件的路径
- (4)再把Before launch里面的Build去掉,就可以开始运行调试了,如下图所示。
- 注:编译出来的java命令路径(/home/develop/jdk12/build/linux-x86_64-server-release/jdk/bin/java)
打上断点,点击debug:
到目前为止,我们能够在CLion中跟踪、阅读源码,但不能修改重新编译。
不过如果需要在CLion中修改源码,并重新编译产生新的JDK,又或者不想阅读时看见一堆头文件缺失提示的话,那还是需要把CMakeLists.txt修好,关于CMakeLists.txt的具体内容,后续再补充。
参考
《深入理解Java虚拟机:JVM高级特性与最佳实践》(第3版)