gpt4 book ai didi

java - Oracle JDK 不是开源项目吗?

转载 作者:搜寻专家 更新时间:2023-10-31 19:32:12 28 4
gpt4 key购买 nike

我在 Technically what is the main difference between Oracle JDK and Open JDK? 阅读

“Oracle JDK 是 OpenJDK 的一个实现,不是开源的”

但 JDK 源代码是公开可用且免费的。正确的 。那么它为什么不开源呢?可能我判断 oracle JDK 是开源的是错误的,因为源代码可能是可用的和免费的,但不允许修改/扩展和重新分发它,这就是为什么它不是开源的?

最佳答案

But [the Oracle] JDK source code is openly available and free. Right?

严格来说,不是。

1) Oracle JDK 的完整源代码不可用。 JDK 源代码 ZIP 文件仅包含公共(public)类库 API 的源代码。不是一些“内部”类。不是 JDK/JRE 工具链。不是 JVM 运行时本身;例如JIT 编译器、GC 实现、 validator 等。

2) 对于可用的子集,您需要接受 Oracle 许可。

3) 可用的源代码在版权 header 中说明它是 Oracle(或 Sun)专有的。

So how come its not open source?

见上文。

May be i am wrong here because source code may be available and free but is it not allowed to modify/extend and redistribute it further, that why it is not open source ?

这是一个原因。

开源并不仅仅意味着源代码可以免费获得。它也可以在没有不当限制的情况下使用它。

(如果您想要 Oracle JDK 的完整源代码,那么它是免费提供的,而且条款和条件非常严格。)


相比之下,OpenJDK 代码库包含在 GPLv2 中(“类路径异常(exception)”阐明了为使用 OpenJDK JVM/类库而构建的应用程序不受 GPL 约束的观点。)OpenJDK 的所有内容都是可作为源代码使用...无需您签署任何内容。

当然,GPL 对您可以做什么进行了限制,但这些限制旨在使代码免费(自由)并保护最终用户的权利。

关于java - Oracle JDK 不是开源项目吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39684598/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com