如何在Eclipse中查看JRE的源代码?


85

使用Eclipse,我想查看核心Java类(Eg java.util.concurrent.ConcurrentHashMap)的源代码,但是当我使用“打开声明”导航到源代码时,它显示“未找到源代码”,并提供了附加源代码的选项。

我的问题是;我如何附加来源?我从哪里获得java.util.concurrent库的源.jar ?

Answers:


84

您需要安装JDK。那你可以看看JDK_INSTALL_DIR\src.zip

对我而言C:\Program Files\java\jdk1.6.0_11\(取决于您当前的版本)

您无需获取特殊的开源版本。


3
现在呢?Oracle似乎隐藏了源代码?您能告诉我现在该怎么做吗?
艾哈迈德·哈米迪

95

在Eclipse中进行编码时,请按一下CTRL并单击源代码中的任何核心Java类名称。Eclipse现在将显示一个屏幕,提示您尚未安装源。但是,在此屏幕中有一个链接,显示“附加源...”。单击该链接,然后从JDK安装目录(src.zip)导入src.zip文件。这应该可以解决问题


9

关于从何处获取源代码,这里有一些很好的答案。但请注意:我将谨慎使用您的使用方式(如果您只是出于参考目的使用它)。该API文档是你应该对代码的唯一合同,而这也正是开发商将保持版本之间的一致/完好。我不会使用源代码来查找实现细节,然后就这些实现细节对我的应用程序进行编码,因为它们可能会在版本之间发生变化。


1
没问题:)
罗布·赫鲁斯卡

6

当您查看项目的Java Build Path时,您应该能够看到“ JRE系统库[jdk1.x.xxxx]”。

您可以通过以下方式访问项目的构建路径配置屏幕:右键单击项目->构建路径->配置构建路径...,您应该能够在列表底部看到JRE系统库条目。

查看类源代码的最简单方法是使用“打开类型”快捷方式。该快捷方式的默认值为:Ctrl+ Shift+ T“。您要查找的类应在键入名称时出现。



4

对于ubuntu,请安装openjdk-6-source并使用/usr/lib/jvm/java-6-openjdk/src.zip


3

如果找不到实际的源,也可以使用反编译器从类文件中重新生成源。

我个人将JAD与JADClipse插件结合使用,以在Eclipse中查看源代码。


3

右键单击项目->构建路径->配置构建路径。现在编辑您的jre>选择第二个替代jre->选择任何jdk(不是jre)。完成,现在通过ctrl +单击打开任何类,将显示其源代码。





0

src.zip文件存在于已安装的jdk文件夹中:..\Program Files\Java\jdk1.8.0_131

在显示“附加来源...”的屏幕上提供此路径,对我有用。


0

我们可以看到C:\ Program Files \ Java \ jdk1.8.0_73 \ src.zip,其中C:\ Program Files是我安装Java的主目录。

在eclipse中,它将显示Source not found。链接在那里的形式就像浏览源一样。浏览链接C:\ Program Files \ Java \ jdk1.8.0_73 \ src.zip并将其附加。现在您可以看到您的源代码。


0

@jjnguy的建议对我有用。但是请确保您还更改了默认编译器。右键单击项目-> Java编译器->单击JDK Compliance(右侧)下的链接。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.