在哪些情况下,应该使用Open JDK
?
是否只是为了合法性问题?
如果是,那么问题是什么?
因为我仍然使用Oracle JDK
开发我的所有项目
2017年11月:在提出这个问题的时候,在OpenJDK和Oracle JDK之间进行选择的原因包括:
>
特定平台的生成/安装程序的可用性。例如,上次我检查了Debian/Ubuntu没有“.deb”格式的Oracle JDK发行版。并且没有用于Windows的OpenJDK构建。
Oracle JDK有一些商业特性,已经付费的人可以启用这些特性。它们不存在于OpenJDK中。
如果您只是计划使用Oracle JDK和OpenJDK软件,那么它们之间没有实质性的许可差异。(Oracle JDK的二进制重新分发有一些限制,但它们是关于传送Java平台的非标准或精简版本的。)
在未来,这些差异中的一些将会消失,根据这个博客页面:
Java9和Java10是EOL。
Oracle JDK Java11及更高版本的商业使用需要Oracle提供支持合同或订阅。OpenJDK Java构建没有这个要求。
Oracle不提供对OpenJDK Java构建的支持,但可以从第三方获得支持。第三方还将Oracle安全修补程序移植到OpenJDK构建中。
问题内容: 我见过很多人声称您应该在选择查询中专门为想要的每一列命名。 假设我仍然要使用所有列,为什么我不使用? 即使考虑问题* SQL查询-从视图选择或从视图*选择col1,col2,’colN,我也不认为这是完全相同的副本,因为我正从略有不同的观点着手解决这个问题。 我们的原则之一是在优化之前就不进行优化。考虑到这一点,在被证明是资源问题或架构几乎是固定的之前,似乎应该使用 首选的 方法。众所
问题内容: 当我尝试运行程序时,出现以下错误 请帮忙 问题答案: 从Javadoc: 如果Java虚拟机找不到声明为native的方法的适当本机语言定义,则抛出该异常。 这是与JNI相关的错误。loadJacobLibrary试图加载名为jacob-1.14.3-x86的本机库,但在java.library.path定义的路径上找不到该库。启动JVM时,应将此路径定义为系统属性。例如 在Windo
在这里抛出RejectedExecutionException是否有其他原因? java.util.concurrent.RejectedExecutionException:任务java.util.concurrent.FutureTask@4194a5f0被java.util.concurrent.ThreadPoolExecutor@41a36e90拒绝[终止,池大小=0,活动线程=0,排队
问题内容: 关于Java的InterruptedException有一些有趣的问题和答案,例如Java中的InterruptedException 的原因和处理InterruptedException。但是,它们都没有告诉我InterruptedException的可能来源。 像SIGTERM,SIGQUIT,SIGINT这样的OS信号呢?在命令行上按CTRL-C是否会产生InterruptedE
问题内容: 与Cipher合作时,我观察到以下内容。 加密码: 解密代码: 运行Decrypt代码时,出现IllegalBlockSizeException(输入长度必须为16的倍数)。 但是如果我将解密代码更改为 它工作正常。我知道这是有规律的。所以我以为是因为我没有提到填充。所以我尝试在加密过程中提供模式和填充, 加密码: 解密代码: 但是它失败,并带有IllegalBlockSizeEx
1.22.6版本addColumn方法为什么不能用 Error: Unknown method: addColumn