哈Ha! 我向您介绍了Stephen Colebourne撰写的文章
“不要掉入Oracle的Java 11陷阱”的翻译。
Java 11
已正式发布 。 这是具有
长期支持 (LTS-长期支持)的主要版本。 但是,Oracle设置了一个陷阱(有意或无意)。
陷阱
23年来,开发人员习惯于从Oracle网站下载JDK并免费使用。 在您喜欢的搜索引擎中输入“ JDK”,然后顶部链接将指向Oracle Java SE下载页面(我故意不提供该链接)。 但是此请求和此链接现在是陷阱。
几乎所有搜索查询都引用的Oracle JDK现在是商业化的,而且不是免费的。更新后的许可协议的关键部分如下:
您不得:将本程序用于开发,测试,制作原型和演示应用程序之外的任何数据处理或任何商业,生产或内部业务目的;
笔译您不能将程序用于任何数据处理或用于任何商业,生产或内部业务目的,但必须对应用程序进行开发,测试,原型制作和演示。
陷阱如下:
- 下载Oracle JDK(因为这是您一直以来所做的,并且这是搜索引擎可能会带您进入的地方)。
- 在生产环境中使用它(因为您不了解和/或不知道许可证已更改)
- 从Oracle Rights Protection团队那里打个讨厌的电话,这需要很多钱。
换句话说,Oracle可以依靠Java开发人员的惯性来强迫他们下载错误的(商业)Java版本。 如果您没有非常仔细地阅读许可协议或警告的文本,您甚至可能没有意识到Oracle JDK现在已经投入商业使用,因此您可能必须向Oracle支付Java费用。
这是否会捕获Oracle的恶意行为? 读者会有自己的见解。 值得记住的是,Oracle在Java的开发上投入了大量资金,因此为想要的人制定商业计划是合理的。 但是,Oracle还为他们提供了免费的替代方案。
解决方案
解决方法很简单!
使用OpenJDK程序集。除了商业JDK,Oracle还正在构建OpenJDK程序集。 这是免费的GPL版本(Classpath例外,可以安全用于商业用途)。
您可以在此处下载 。
当前,只有Oracle提供的OpenJDK构建。 但是,很快就会有更多可用的东西,例如
AdoptOpenJDK (可能在本周)。 除OpenJDK构建外,还将使用其他非Oracle社区成员提供Java 11的长期支持。(
译者注:您可以阅读SO的此答案,以了解OpenJDK与AdoptOpenJDK之间的区别)总结
除非您打算为此付费,否则请勿下载或使用Oracle JDK。
从现在开始,要使用Java 11,请下载并使用OpenJDK程序集。
关于该主题的其他信息:
blogs.oracle.com/java-platform-group/oracle-jdk-releases-for-java-11-and-laterblog.joda.org/2018/08/java-is-still-available-at-zero-cost.htmlblog.joda.org/2018/09/time-to-look-beyond-oracles-jdk.html