背景
每个版本的 jdk 的安装包中都有一个 src.zip
可以导入到 IDE 中关联源代码,开发的时候也便于查看源代码,但是 src.zip
中的源代码并不是rt.jar
的全部内容,尝试通过其他途径获取不在此包的源码。
现有源码
通过 IDE可以方便的额看到,rt.jar
中的结构如下:
然而 src.zip
中结构大概为:
.├── com├── java├── javax├── launcher└── org复制代码
对比可以看到,apple
,jdk
,sun
这几个包的的源码都不在其中,但是日常工作中有一些代码又需要查看,或许应该想起了 openjdk
, 这几个包中的代码在openjdk
基本都可以找到,我们把openjdk
代码下载下来,然后关联到IDE, 岂不是爽歪歪,不用为看不到源码而伤心啦.
获取 openjdk
获取openjdk
的方法很多,比如可以直接下载源码包,也可以通过一些版本管理工具获得.本文以jdk8
举例.
- 获取官方源码
- 通过
github
获取,为了方便用户,github
上面有一些同步了官方库到github
仓库的,比如 (项目接近2G, 下载时间较长)
git checkout jdk8u/jdk8u复制代码
IDE 和源码关联
以 idea 为例: 点击右上角的项目结构
加入目录jdk/src/share/classes