最近换了新版的eclipse,在jdk源码里面,打断点发现无法进入源码调试,程序直接跳过,已查资料发现自己eclipse配置的是jre环境的。
此处要配成jdk目录才有效

打开preferences,点击java ,在点击installed JRES
选中jre的目录,我这里只有一个,是我jdk的安装目录,

将JRE home配置成jdk的目录,

点击Restore Default就可以调试了。

这里简单说下jre和jdk的区别。
JRE: Java Runtime Environment
JDK:Java Development Kit
JRE包含了java的虚拟机,运行时类库。如果你只需运行java程序,安装jre就行了。
JDK包含了JRE,同时还包含了编译java源码的编译器javac,提供了JVM和Runtime辅助包。如果你是开发java程序的话就必须安装JDK

https://blog.csdn.net/cherrycheng_/article/details/51004386

问题效果图:

解决后的效果:

具体步骤:

1.制作可调试的rt.jar包

1.1 .在D盘新建jdk7_src及jdk7_rt-debug两个文件夹

1.2.复制JDK源码

将环境变量中配置的java_home地址或者将用的外部JDK安装目录下的src.zip

复制到D:/jdk7_src,解压.效果如下图

1.3.选择要编译的源码

原文中说,留下java,javax,org三个文件夹就足够了,其他都可以删除。

我只是把swing的内容删除了,其他都留下了。大伙可以随意。

swing包目录位置:com\sun\java\swing,javax\swing

1.4.得到要处理的java文件名

命令及效果图如下:

要查看一下,自动生成的filelist.txt中是否有内容哦,没有数据的话下面的操作是没用的。

D:
cd D:\jdk7_src
dir /B /S /X *.java > filelist.txt

1.5.复制jre/lib/rt.jar

把JDK安装目录(复制src.zip的那个目录)下jre/lib下的rt.jar复制到jdk7_src目录下

1.6.生成一些可调试的class文件夹

执行如下命令,成功后,jdk7_rt-debug文件夹会产生一些可调试的class文件夹,如下图:

如果没有,请打开jdk7_src/log.txt,ctrl+F查找“错误”,并解决。

一般,将报错的java路径及路径对应的文件删除,再执行dir /B /S /X *.java > filelist.txt即可。

<span style="font-family:KaiTi_GB2312;font-size:18px;">javac -J-Xms16m -J-Xmx1024m -sourcepath D:\jdk7_src -cp D:\jdk7_src\rt.jar -d D:
\jdk7_rt-debug -g @filelist.txt >> log.txt 2>&1</span>

1.7.将这些文件打包成Jar

命令和效果如下图

cd ..
cd jdk7_rt-debug
jar cf0 rt_debug.jar *

2.使用可调试的rt.jar

2.1.把rt_debug.jar放入JDK中

放入java_home/jre/lib/endorsed目录

2.2.将rt_debug.jar加入Eclipse使用的JDK中

2.3.添加rt_debug.jar的源码包

2.4.开始debug吧,你成功了!!

如果失败了,下载我的试试吧

eclipse无法断点调试JDK源码的问题的更多相关文章

  1. eclipse如何debug调试jdk源码(任何源码)并显示局部变量

    最近要看struts2源码 仿照了一下查看jdk源码的方式 首先你要有strtus2的jar包和源码,在struts官网上下载时,选择full版本,里面会有src也就是源码了. jar导入项目,保证可 ...

  2. eclipse如何debug调试jdk源码

    java是一门开源的程序设计语言,喜欢研究源码的java开发者总会忍不住debug一下jdk源码.虽然官方的jdk自带了源码包src.zip,然而在debug时查看变量却十分麻烦.例如调试HashMa ...

  3. eclipse如何debug调试jdk源码,并显示局部变量

    http://blog.csdn.net/xuefeng0707/article/details/8738869 http://blog.csdn.net/leehsiao/article/detai ...

  4. 设置Eclipse可以Debug模式调试JDK源码,并显示局部变量的值

    最近突然萌发了研究JDK源码的想法,所以就想到了在自己常用的Eclipse上可以调试JDK源码. 整个设置过程也很简单: 首先你要安装好JDK(我的JDK安装路径根目录是D:\Java\jdk-8u9 ...

  5. 跟踪调试JDK源码时遇到的问题及解决方法

    目录 问题描述 解决思路 在IntelliJ IDEA中调试JDK源码 在eclipse中调试JDK源码 总结 问题描述 最近在研究MyBatis的缓存机制,需要回顾一下HashMap的实现原理.于是 ...

  6. eclipse调试jdk源码

    摘要 介绍使用eclipse调试jdk源码 java是一门开源的程序设计语言,喜欢研究源码的java开发者总会忍不住debug一下jdk源码.虽然官方的jdk自带了源码包src.zip,然而在debu ...

  7. netbeans工具使用xdebug断点调试php源码

    对有有经验的程序员,使用echo.print_r().print_f().var_dump()等函数足以调试php代码,如果需要在IDE工具中使用断点调试,xdebug就是一个非常好的php调试工具. ...

  8. JDK源码重新编译——支持eclipse调试JDK源码--转载

    最近在研究jdk源码,发现debug时无法查看源码里的变量值. 因为sun提供的jdk并不能查看运行中的局部变量,需要重新编译一下rt.jar. 下面这六步是编译jdk的具体步骤: Step 1:   ...

  9. 利用eclipse调试JDK源码

    先看效果图 综合网上各种教程,总结如下 新建 D:/jdk/src .D:/jdk/debug 目录 src存放源码 debug存放编译结果 将 %JAVA_HOME%/src.zip 解压到 D:/ ...

随机推荐

  1. jsp中相对路劲

    .代表当前目录 ..代表上一层目录 例如:如下文件,aliCashier.html要引入images下的图片,应该写成../../static/images/logo.png,此处会找到本地静态路径. ...

  2. undo与redo

    http://www.cnblogs.com/HondaHsu/p/3724815.html

  3. rabbitmq 生产者 消费者(多个线程消费同一个队列里面的任务。) 一个通用rabbitmq消费确认,快速并发运行的框架。

    rabbitmq作为消息队列可以有消息消费确认机制,之前写个基于redis的通用生产者 消费者 并发框架,redis的list结构可以简单充当消息队列,但不具备消费确认机制,随意关停程序,会丢失一部分 ...

  4. 提高MySQL数据库的安全性

    1. 更改默认端口(默认3306) 可以从一定程度上防止端口扫描工具的扫描 2. 删除掉test数据库 drop database test; 3. 密码改的复杂些 # 1 set password ...

  5. jstat命令详解

    Jstat是JDK自带的一个轻量级小工具.全称“Java Virtual Machine statistics monitoring tool”,它位于java的bin目录下,主要利用JVM内建的指令 ...

  6. Spring data jpa JavassistLazyInitializer 不仅是Json序列化问题.以及解决办法

    最近偷点时间更新一下框架,使用SpringBoot2.0 整套一起更新一下,发现些小问题 Spring data jpa getOne 返回的是代理对象,延迟加载的,ResponseBody成Json ...

  7. iOS 弹出菜单UIMenuController的基本使用

    UIMenuController,弹出菜单@implementation DragView{    CGPoint startLocation;    CGFloat rotation;}-(inst ...

  8. [dpdk][sysfs][pci] 在dpdk程序中操纵PCI设备

    〇  需求 在DPDK程序运行时,希望能够实时的操纵PCI 网卡设备的驱动绑定与解绑. 本文的目的是为了调查满足以上需求的,kernel提供的,标准的API都有几种,分别是什么.以确定实施方案. 一  ...

  9. ARGB与RGB、RGBA的区别

    ARGB 是一种色彩模式,也就是RGB色彩模式附加上Alpha(透明度)通道,常见于32位位图的存储结构. RGB 色彩模式是工业界的一种颜色标准,是通过对红(R).绿(G).蓝(B)三个颜色通道的变 ...

  10. MongoDB常用操作--简介

    mongodb在项目中使用越来越觉得日志方面的记录和查询是远远优于MySQL的,所以对其一些基本的操作进行了整理,以下就是整理的一些规则插入数据: insert插入多组数据:inserrAll修改数据 ...