我想了解openjdk虚拟机的代码,尤其是垃圾回收部分。我试图在CLion中打开它,但是出现了很多错误。是否有文件可以说明如何设置和导航代码?
OpenJDK源代码发布包中包括NetBeans项目nbproject - 只需在带有C/C++开发包的NetBeans IDE中打开此项目。该项目已经包含了Solaris,Linux和MacOS的配置。以下是逐步说明(我没有检查):
如果您使用CLion,则可以使用以下说明。
如果您有兴趣在热点项目中使用,可以使用此CMakeLists.txt。
cmake_minimum_required(VERSION 3.6)
project(hotspot)
set(CMAKE_CXX_STANDARD 98)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_GNU_SOURCE \
-D_REENTRANT \
-DLINUX -DINCLUDE_SUFFIX_OS=_linux -DVM_LITTLE_ENDIAN \
-DTARGET_COMPILER_gcc \
-DAMD64 -DHOTSPOT_LIB_ARCH='amd64' -DINCLUDE_SUFFIX_CPU=_x86 -D_LP64 -DTARGET_ARCH_x86 \
-DCOMPILER1 -DCOMPILER2")
include_directories(
src/share/vm
src/os/linux/vm
src/cpu/x86/vm
src/os_cpu/linux_x86/vm
src/share/vm/precompiled)
set(SOURCE_FILES
// CLion will generate includes here automatically on project initialization
)
add_executable(hotspot ${SOURCE_FILES})