在eclipse编写代码的过程中,有时候想点进去看看jdk的源码,了解下里面具体的实现。在没有任何配置的情况下,应该是看不到源码的。

其实只需要把jdk安装目录下的src.zip压缩包添加到eclipse即可看到源码。具体如下面配置。

1、点击eclipse 顶部栏【window】--【preferences】,选择【Installed JREs】,选中右侧的已添加的JDK版本,然后点击【edit】按钮。

2、在打开的界面选中rt.jar,然后点击右侧的【Source Attachment...】。

3、在打开的界面点击选择 【Extenal location】,点击【External File...】,选择对应的jdk版本安装目录下的src.zip压缩包添加即可。

添加完src.zip压缩包后,一般开发过程中所需用到的jdk api应该都能看到其对应的源码了。

但还是会有部分api点击进去是看不到源码的,如反射生成代理类字节码的ProxyGenerator等,那是因为src.zip包里就没有对应的java源文件。 如果你打开src.zip包和rt.jar对比下各自目录结构,会发现很多在rt.jar下存在的class文件,在src.zip下没有对应的java源文件。

可以从下面的地址获取open jdk的源码,下载后解压,根据上面的第3步,把src.zip压缩包的路径替换成把解压目录下的src\share\classes即可看到之前不能看的源码。

http://hg.openjdk.java.net/jdk8/jdk8/jdk/

另jdk api 中用native标识的方法可以通过查看src\share\\native下的文件。

如何在eclipse查看jdk源码(src.zip)的更多相关文章

  1. eclipse查看jdk源码,及反编译查看

    jdk中的包: dt.jar是关于运行环境的类库,主要是swing的包 tools.jar是关于一些工具的类库 rt.jar包含了jdk的基础类库,也就是你在java doc里面看到的所有的类的cla ...

  2. 一、怎样使用eclipse查看JDK源码

    前言: JDK是整个java开发的核心,它包含了JAVA的运行环境,JAVA工具和JAVA基础的类库.阅读一些系统的源码会帮助你理解一些基本的原理. 一.创建一个工程 在eclipse中创建一个jav ...

  3. eclipse 查看jdk源码

    eclipse中引入jdk源码的设置:  设置: 1.点 "window"-> "Preferences" -> "Java" ...

  4. Eclipse查看JDK源码

    设置 点 "window"-> "Preferences" -> "Java" -> "Installed JR ...

  5. Eclipse查看JDK源码(非常详细)

    Eclipse查看源码的方式其实很简单,打开项目,然后按着ctrl,然后把鼠标光标移动到你想查看的方法或者对象上,这时会出现一条下划线,然后点击鼠标左键就可以进入那个方法或者对象了.但是有的情况下会出 ...

  6. Eclipse查看jdk源码(Ctrl+左键)

    Window ->Preferences ->Java ->Installed JREs ->选中jdk ->Edit ->选中rt.jar ->source ...

  7. 使用NetBeans、Eclipse阅读JDK源码

    下面说明在Netbeans.Eclipse环境下怎么查看JDK源码: Netbeans: 在"工具->java平台->源"里添加下路径,如果你安装jdk的时候选择安装了 ...

  8. eclipse调试jdk源码

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

  9. Eclipse系列:如何设置Eclipse关联JDK源码和文档

    一.设置Eclipse关联JDK源码 1.打开Eclipse-->Windows-->Preferences       2. 在弹出的Preferences对话框中,Java--> ...

随机推荐

  1. hdu3518(后缀数组)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3518 题意: 给出一个字符串, 问其中有多少字串出现了两次以上(计算次数时不能彼此覆盖, 如 &qu ...

  2. windows-bat配置环境变量的几个坑点

    今天因为学校机房问题,想自动化安装vim,不料在编bat的时候不熟练,搞了很久. 坑点1.%path%访问到的是用户的path,而不是系统的path.所以增加环境变量的时候只能增加用户的path.我就 ...

  3. CSS(九)元素隐藏和利弊

    隐藏元素.无法点击,这之间有什么关系呢? 可以配合我写的 html 食用:https://github.com/dirstart/ScriptOJ/blob/master/OJ_CSS/4.css%E ...

  4. SprimgMVC学习笔记(四)—— @RequestMapping

    一.URL路径映射 @RequestMapping(value="item")或@RequestMapping("/item") 当value的值是数组时,可以 ...

  5. [Leetcode]014. Longest Common Prefix

    public class Solution { public String longestCommonPrefix(String[] strs) { if(strs == null || strs.l ...

  6. 读经典——《CLR via C#》(Jeffrey Richter著) 笔记_高级管理控制(配置)

    一个应用程序的XML配置文件示例: <?xml version="1.0"?> <configuration> <runtime> <as ...

  7. Python入门字符编码

    计算机基础知识 一.应用程序任何操作硬件的请求都需要向操作系统发起系统调用,然后由操作系统去操作硬件 二.文本编辑器存取文件的原理 1.打开编辑器就打开了启动了一个进程,是在内存中的,所以,用编辑器编 ...

  8. sqlserver 服务器监控

    1.表锁 查看被锁的表:select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName from ...

  9. Linux网络编程基础

    1. Linux网络模型 ① OSI七层模型和Linux四层模型 ② 各种协议之间的关系及在Linux模型中的位置 ③ 协议封装:各种协议处于一种层层封装的关系 (1)Ethernet (2)IP * ...

  10. python3 importlib模块简单利用

    importlib作用:根据字符串形式导入模块,并且找到其中的类并执行 import importlib # m = importlib.import_module("src.plugins ...