首页 文章

如何下载最新的java虚拟机(Hotspot)源代码?

提问于
浏览
0

我将为Java社区做出贡献,我对JVM感兴趣 .

现在我想下载最新的JVM Hotspot源代码并跟踪更新 .

首先,我去http://openjdk.java.net/ .

在它的左侧,我找到了一些有用的标签

Source code: 
Mercurial 
Bundles
...
JDK 6
JDK 7
JDK 7 Updates
JDK 8 · Java SE 8
JDK 8 Updates
JDK 9 · Java SE 9
JDK 10

我只能找到有关如何下载JDK8u源代码的说明:http://openjdk.java.net/projects/jdk8u/

状态

我们在jdk8u-dev森林中开放修复8u152 . (发布时间是 2017-06-06 14:23:36

源代码

可以使用以下命令克隆用于正在进行的开发的jdk8u-dev林: hg clone http://hg.openjdk.java.net/jdk8u/jdk8u-dev;cd jdk8u-dev;sh get_source.sh .

可以使用以下命令克隆相应的主林jdk8u: hg clone http://hg.openjdk.java.net/jdk8u/jdk8u;cd jdk8u;sh get_source.sh .

此外,通过克隆8u主林: http://hg.openjdk.java.net/jdk8u/jdk8u 并使用' jdk8u102-b14 'mercurial标记,可以获得上一版本8u102的源代码 .


但似乎jdk9和jdk10也在名单上 . 它们是最新的源代码吗?如何下载它们?

JDK9页面未提供有关如何获取源代码的说明 . JDK9:http://hg.openjdk.java.net/jdk9

JDK10:http://openjdk.java.net/projects/jdk10/


此外,如果Java社区发布新的更新,更新我当前源代码的最佳方法是什么?再次下载或使用Mercurial工具?


什么是 forest 在jdk源代码中?它与git中的 branch 类似吗?


另外,我可以找到另一种从JetBrains中的github下载JVM Hotspot源代码的方法:

https://github.com/JetBrains/jdk8u_hotspot/tree/d37547149a7c5647ebffbbb62525cc62bd8e2673

但我不确定这是最新的 .

1 回答

  • 3

    这取决于'most updated'的含义 .

    实际上,所有jdk8u,jdk9和jdk10存储库都保持最新;它们只是具有不同状态并接受不同变更的单独项目 .

    • jdk8u 具有将在JDK 8的未来更新中出现的最新更改 . 这些更新主要包括错误修复 .

    • jdk9 存储库包含将在JDK 9发布的最新代码 . 该项目现在处于Rampdown阶段2,这意味着只能在那里修复showstopper错误 . 尚未定义JDK 9发布后该存储库会发生什么 - 例如为像jdk9u这样的东西开始 .

    • jdk10 包含有关Java SE平台未来版本的持续工作 . 这里做出的重要改进可能会在稍后的某个时候被移植到jdk9(当然,如果它们符合规范) .

    请注意,直接在此存储库中开发了新功能 not . 新功能必须经过JEP process . 一些更大的功能甚至可以托管在单独的项目中,如PanamaValhalla .

    OpenJDK项目的官方存储库位于http://hg.openjdk.java.net
    要获取源代码,请使用Mercurial,例如:

    hg clone http://hg.openjdk.java.net/jdk10/jdk10
    

    它包含几个嵌套的存储库 . HotSpot JVM位于 hotspot 之下:

    hg clone http://hg.openjdk.java.net/jdk10/jdk10/hotspot
    

    稍后您可以使用 hg pull -u 将本地存储库与主服务器的更新同步 .

    在父存储库中,您还将找到如何获取源代码和构建OpenJDK的说明:common/doc/building.md . 在jdk9回购中有一个similar document .

相关问题