我想看看Java API中的方法是做什么的。所以我想要JDK源代码。在重新安装Linux之前,我先安装了src.zip包含所有正式源代码的软件包。我只需要告诉Eclipse这个文件在哪里,就可以看到代码。但是现在我没有文件了...
所以问题是:在哪里可以找到它?
我想看看Java API中的方法是做什么的。所以我想要JDK源代码。在重新安装Linux之前,我先安装了src.zip包含所有正式源代码的软件包。我只需要告诉Eclipse这个文件在哪里,就可以看到代码。但是现在我没有文件了...
所以问题是:在哪里可以找到它?
Answers:
jdk-6u21-ea-src-b04-jrl-05_may_2010.jar, 136.48 MB?我已经下载了那个。但不包含源代码。
java -jar jdk-6u21-ea-src-b04-jrl-05_may_2010.jar。它将提取源。
可悲的是,在撰写本文时,尽管拥有自己的文档自述文件,但在下载Windows版本时,JDK 7或8安装目录中没有 src.zip 。
注意:可能发生这种情况是因为我们许多人实际上并未运行install .exe,而是将其解压缩了。出于安全原因,我们中的许多人不运行Java安装(完整的Windows安装)....我们只是希望JDK放置在潜在病毒无法找到的地方。
但是他们关于windows .exe(无论它是什么)的政策确实是胡说八道,但是 src.zip 确实存在于Linux安装程序(.tar.gz)中。有多种提取.tar和.gz的方法,我更喜欢免费的“ 7Zip”实用程序。
甲骨文,这真是愚蠢。
我的Ubuntu遇到了这个问题。
我需要做的所有事情来获取Java安装的源代码:
sudo apt-get install sun-java6-source
E: Unable to locate package sun-java6-source
我目前在OSX上使用的JDK 1.6 Mountain Lion都没有提供src.zip,据我所知,现在不再有受支持的OSX JDK 1.6。
因此,我下载了OpenJDK源代码(使用接受的答案(+1)中的链接),然后运行:
cd ~/Downloads
mkdir jdk6src
cd jdk6src
tar xf ../openjdk-6-src-b27-26_oct_2012.tar.gz
cd jdk/src/share/classes
jar cf /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/src.jar *
(您的文件名和路径可能有所不同...)
将其src.jar与IDE中适当的Java平台相关联,您应该会很高兴。
OpenJDK源代码和我当前正在运行的JDK之间存在一些差异(其中之一是调试器中的行号不匹配),但是如果您只想使用zip / jar将IDE指向相对在少数情况下,您需要查看一些代码以了解某些内容是如何工作的,那么这应该可以解决问题。
这里是jdk源码的官方链接。 http://www.oracle.com/technetwork/java/javase/downloads/index.html (您可能需要滚动到页面底部)
是!!得到它了!
我从sun.com下载了适用于Linux的Java开发人员工具包(JDK)。里面有src.zip。但是首先我用synaptic卸载了所有Java软件包。
官方链接不再提供原始源代码。官方链接和Google随意搜索将使您拥有开放的jdk。除非修改了构建脚本文件,否则打开jdk会导致android构建问题。原始包可以在这里找到:
sudo add-apt-repository“ deb http://ppa.launchpad.net/ferramroberto/java/ubuntu oneiric main”
此仓库仍具有sun-java6-source软件包。信用:http : //pulasthisupun.blogspot.com/2012/05/installing-sun-java-6-with-apt-get-in.html
src.zip在JDK安装目录中找到包含公共Java API的文件。这就是您要寻找的东西(我主要使用Windows,所以Linux发行版可能没有)。