经过一番挣扎终于成功讲Hotspot导入NetBeans中进行调试。
一.安装NetBeans(所谓工欲善其事,必先利其器 )
下载的时候有些注意点
- NetBeans的每个版本中按语言的支持程度分为好几种,这里我们需要的支持c/c++就可以了,理由很简单,因为Hotspot编译好以后是c++或者c文件。
- 不同版本,我指的是NetBeans8.2、8.1、8.0、7.4等版本对JDK版本是有要求的,所以最好下载一个最新版本的jdk(JDK不会装可以参考我),理由是在安装NetBeans的时候会要求你有jdk的支持,软件本身运行需要jdk支持。
- 安装的时候,由于是Linux版的,下载下来的是XXX.sh文件,ll一下看这个文件的权限发现不能执行,所以先在终端执行chmod +x XXX.sh赋予此文件执行的权限,然后./XXX.sh即可,卸载也是同理。还有疑问的可以
二.导入Hotspot
同样有些注意点
- 看我选项
- 这里要选择定制
- 找到make目录下的Makefile文件,NetBeans是根据这个来构建项目的。
- 之后直接下一步下一步finsh即可
三.配置一些参数(重要)
- 项目右键->属性打开
- 第一步配置make,选择构建命令一栏然后输入下面一段配置
- ${MAKE} -f Makefile clean jvmg
- 根据自己的JDK路径来配置注意这个路径和之前安装NetBeans时候的JDK可以不是同一个,这个JDK和你时候编译用哪个有关 ALT_BOOTDIR=/home/maozuowei/software/jdk/jdk1.6/jdk1.6.0_45
- 这个属性表示你的电脑是64位的 ARCH_DATA_MODEL=64 LANG=C ZIP_DEBUGINFO_FILES=0
- 第二步配置运行(这个每个人的情况都可能不一样),
文件搜索命令:locate:快,这个是从var/lib/mlocate.db里找的,系统默认一天自动更新,用sudo updatedb可以强制更新。只能搜索文件名。在终端输入locate gamma,这个时候可能会出现很多路径,找到像这样的路径/home/maozuowei/software/openjdk/build-debug/hotspot/outputdir/linux_amd64_compiler2/jvmg/gamma 一般结尾都是这个样子的,目录各自都不同。然后将你搜到的路径复制一份,黏贴到运行命令栏目里。然后配置环境变量,配置JAVA_HOME、CLASSPATH、LD_LIBRARY_PATH
-
博主例子:
-
LD_LIBRARY_PATH /home/maozuowei/software/openjdk/build-debug/hotspot/outputdir/linux_amd64_compiler2/jvmg
-
JAVA_HOME /home/maozuowei/software/jdk/jdk1.6/jdk1.6.0_45
-
CLASSPATH ${JAVA_HOME}/jre/lib/rt.jar;${JAVA_HOME}/bin;${JAVA_HOME}/lib/tools.jar
四.点击运行,出现下图所示那么大功搞成
不足之处请各位指正,不懂可以留言。