0

我想看看 Java API 中的方法是做什么的。为此,我需要以某种方式安装或放置在我的计算机上的 JDK 源代码。

在我重新安装 Linux 之前,我有一个src.zip包含所有官方源代码的软件包。我只需要告诉我的 IDE 这个文件在哪里,它就会自动找到并显示我想要查看的 Java 代码。但是现在我丢失了文件并且无法重新定位它。看起来甲骨文要么隐藏了源代码,要么想出了一种不同的发布方式。

我使用 Eclipse,但我认为对于大多数现代 IDE,该过程实际上是相同的。

所以问题是:如何让我的 IDE 能够再次查找并绑定到 Java 源代码?

4

1 回答 1

0

我写这个问题是为了修改Where to find Java JDK Source Code? . 由于题外话而被关闭,但我认为这是一个非常相关的问题。

简短的答案

如果您正在使用 Oracle 的 Java,您需要做的就是安装您正在使用的 Java 包的 JDK,然后设置您的 IDE 以使用该 JDK 来支持其项目。“src.zip”已预先打包,您的 IDE(或至少 Eclipse)应该能够自行显示其中的源文件。

如果您使用的是开放式 JDK,您只需要知道 JDK、它的 Javadocs 和它的源代码都在它们自己的 rpm 中。要获取正在使用的 java 版本的源代码,您只需要找到并安装 java-1.XX-openjkd-src。1.8 在名称中添加了“-debug”。完成此操作后,只需重新启动 IDE,它就会在重新加载其项目时拾取源文件。

甲骨文

如果您使用 Oracle 的 Java,则需要确保您是针对 JDK 而不是 JRE 进行开发的。这是一个示例站点,可让您下载 JavaSE 的 JDK:http ://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

您需要接受许可协议,然后为要安装它的系统提取适当的 JDK。就我而言,我在 64 位 Linux 上安装,所以我下载了 jdk-8u121-linux-x64.rpm。

下载后,运行安装程序。完成后,查找安装程序实际放置文件的位置。在 Linux 上,您可以使用此命令来查找您安装的...

rpm -qa | grep jdk

...这是查找它的信息(在我的情况下,使用 jdk1.8.0_121.

rpm -qi jdk1.8.0_121

您可以查看 Relocations 字段以了解从哪里开始,或者您可以将 -i 参数更改为 -l 以获取实际安装的文件的完整列表。

您可能只需在您的 IDE 中注册这个新安装的 JDK,它就会足够聪明,知道在哪里可以找到源代码。但是,如果这不能完成工作,您可以通过 grepping 安装的文件的完整列表来找到 src.zip 文件,如下所示:

$ rpm -ql | grep 'src.zip'
/usr/java/jdk1.8.0_121/src.zip

现在只需将您的 IDE 指向该 zip 文件,就可以了。

打开 JDK

找到开放 JDK 源代码的唯一技巧是意识到他们将源代码安装在与基本 JDK不同的包中。
因此,使用您选择的包管理器,查找可用的 jdk 包。查看您已安装并正在使用的包,并找到具有相同名称和 -src 扩展名的包。

所以如果你有java-1.8.0-openjdk,你应该可以找到java-1.8.0-openjdk-src。安装那个包,重启你的IDE,然后你应该可以查看源代码了。

于 2017-02-04T00:04:14.680 回答