第一篇:在Centos7上编译openjdk8源码 安装Eclipse及CDT插件 运行hotspot及调试java项目

1.jdk7下载地址


C++,GCC的库此处略过,缺少什么到网上查资料,yum -y install xxxx
2.openjdk8的下载地址

download.java.net/openjdk/jdk8/promoted/b132/openjdk-8-src-b132-03_mar_2014.zip

3.配置configure

进入到openjdk8的文件夹中,执行 ./configure

4.编译 make all

执行make all 等大概30分钟


5.测试是否安装成功

./build/linux-x86_64-normal-server-slowdebug/jdk/bin/java -version

6.在eclipse上调试hotspot源码
3、在eclipse上调试hotspot源码
3-1、下载eclipse,安装C/C++插件
      到官网选择一个合适的eclipse下载: https://www.eclipse.org/downloads/eclipse-packages/?osType=linux&release=undefined
      这个还没有开发C++的功能,所有解压打开eclipse后,还需要到"help -> Eclipse Maketplace",搜索"c++"找到Eclipse C++ IDE..安装;
      安装后,就可以转到C++开发视图界面了,如下:
3-2、导入hotspot工程
      File-> New -> Existing Code as Makefile Project
在界面中:
      Project Name:hotspot(这个可以自己选择)
      Existing Code Location:/root/openjdk/hotspot
      Toolchain:选Linux GCC,然后按Finish.     
3-3、配置源码调试     
      右键工程 -> Debug As -> Debug Configurations -> 右键左边的C/C++ Application -> New -> 进入Main选项卡;
在选项卡中:
      Project:hotspot(选择导入的hotspot工程)
      C/C++ Application:/root/openjdk/build/linux-x86_64-normal-server-slowdebug/jdk/bin/java(编译生成的openjdk虚拟机入口)
      Disable auto build:因为不再在eclipse里面编译hotspot源码,所以这里选上它;
      然后切换到Arguments选项卡, 输入Java的参数, 我们这里运行上面的Main类, 于是这里填上 "Test"也就是我们要执行的Java程序
      然后切换到Environment选项卡, 添加变量:
JAVA_HOME=/root/openjdk/build/linux-x86_64-normal-server-slowdebug/jdk/(编译生成JDK所在目录)
CLASSPATH=.:/root/test (Test类文件所在目录)
      点击下面的Apply保存;
3-4、断点Debug
      在hotspot源码工程中找到init.cpp, 在95行打个断点;
      运行上面配置的Debug, 可以看到顺利调到了断点;
      如图:
       注意,如果不能进入断点看前面"2-3";
4、配置hotspot调试运行eclipse的java工程
4-1、新建java工程(测试)
      新建java工程,在工程新建包,在包中新建Test.java文件,测试程序如下:
[java]   view plain   copy
  1. package com.hotspot.test;  
  2. public class Test {  
  3.      public static void main(String[] args){  
  4.          System.out.println("hotspot test!");  
  5.      }  
  6. }  
      而运行正常,生成了Test.class文件,如下图:
4-2、修改hotspot工程调试参数
      在前面的5-3配置源码调试的配置上作如下修改;
      Arguments选项卡:
      com.hotspot.test/Test (注意在前面加上包名,然后是运行类)
      Environment选项卡, 修改变量:
      CLASSPATH=.:/root/workspace/TestHotspot/bin (java工程生成的bin目录, 不包括包名目录)  
      保存后,点击调试运行hotspot工程,可以看到正常运行了上面的java工程文件,如下:

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值