编译Java基础类库
想看看Java的源码,之前都是通过关联源码的方式看,不过这样只能通过方法的关联去看,很是不爽。现在直接把整个源码都导进Eclipse的工程下并编译来,这样就舒服多了。
参考链接:
源码在jdk安装目录下,如上图所示的src.zip
就是。
首先,在Eclipse下建一个Java工程
然后src上右键,import选择Archive File
导入
选择src.zip
后finish即可
等待Eclipse把类都复制到工程下。复制好了等等第一次编译,有点慢。而我的Eclipse在编译期间崩了,什么鬼。
好吧,关掉再开。所幸的是还能正常打开~~!但是我看到了啥……
WTF,要不是参考链接中有提醒,我估计会怀疑人生。
Access restriction,访问限制,意思是这些API是限制访问的。简单来说,这些API是非常底层的,可以理解为核心,只有在编 写JDK这样的程序的时候才会使用上,一般我们自己写的JAVA应用程序肯定是不会用到这么底层的API好,我们就来关闭API限制
默认是Error,这里改为Warning或Ignore都是OK的。确定后提示要全部重新编译,等待一会就好。
然后“嗖”的一下就剩53个了,
首先是the import com.sun.tools cannot be resolved
,这个通过导入jar包就能解决
tools.jar
在jdk安装目录的lib文件夹下
下面解决UNIXToolkit
和FontConfigManager
的问题。
这两个类的源文件可以在OpenJDK网站下载
进去后找到相应的类直接ctrlcv就行。
并在Eclipse工程下建立相应的目录和类
等待编译完就OK了,致此Error全部消灭,终于可以愉快的看源码了
这调用链查看美滋滋啊~~!
还可以把项目导出为rt_debug.jar
用作默认jdk的扩展,以进行JDK源码的调试跟踪。不过我暂时还不需要那么复杂的功能,就先这样了,如果有需要的可查看参考链接或自行百度。