Blog chevron_right 未分类

Oracle Java 17 虽然免费,但期限将尽

2021 年 9 月,Java 17 发布,并迅速创下了 Java 新版本最快采用速度的纪录。截至 2023 年,在 New Relic 监测的应用程序中,有 9% 在生产环境中使用了 Java 17。

得益于各种工具、库和框架的广泛支持,以及该版本新推出的特性和增强功能,Java 17 迅速得到采用。Java 17 也是一个“LTS”Java 版本,这表示 Oracle 会为其提供“长期支持”(包括五年付费高级支持和三年额外扩展支持)。

Oracle Java 的 LTS 版本还有一个额外好处:提供大约三年的免费期限。该版本根据“无费用条款和条件”许可证发布,可供所有用户免费使用,其中也包括希望在商业生产环境中使用 Oracle JDK 的用户。这一免费期限将持续到下一个 LTS 版本发布后的一年。此后,该许可证将转换为限制性更强的“Oracle 技术网络许可协议”,要求在商业生产环境中使用免费版本的公司必须购买 Java SE 通用许可证。

目前,Java 17 是免费的,但如果您使用的是 Oracle Java 发行版,那么到 9 月中旬,它将不再免费。许多公司,或许就包括您的公司,尚未准备好承担 Java SE 订阅的成本。

Oracle 以员工数量为标准,计算 Java SE 通用订阅的定价。客户将根据其组织中的员工人数支付费用,这其中不仅包括全职、兼职和临时员工,还包括为其内部业务运营提供支持的全职、兼职和临时代理、承包商、顾问和外包人员。

定价表如下:

员工 每位员工的成本
1-999 人 15.00 美元
1,000-2,999 人 12.00 美元
3,000-9,999 人 10.50 美元
10,000-19,999 人 8.25 美元
20,000-29,999 人 6.75 美元
30,000-39,999 人 5.70 美元
40,000-49,999 人 5.25 美元
50,000 人以上 定制定价

假设一家拥有 10,000 名员工的公司在生产环境中使用 Oracle JDK 17 运行三个应用程序,从 9 月中旬开始,该公司将必须向 Oracle 支付 99 万美元的许可证费用。 

10,000 (员工) x 8.25 美元 x 12 (月) = 990,000 美元

所有使用 JDK 17 的公司都必须支付这些费用吗? 

从其他提供商(例如 Eclipse Temurin 或 Azul)那里获取 Java 17 发行版的公司将不会面临任何许可或定价变化。免费版本将继续保持免费,而付费支持订阅(如 Azul Platform Core 提供的订阅)将继续遵循现有的定价模式。例如,Azul Platform Core 支持 Azul Zulu JDK 和 Eclipse Temurin JDK,其定价依据使用情况而定,通常至少比 Oracle Java SE 便宜 70%。

OpenJDK Migration for Dummies eBook Cover

从一个 JDK 发行版迁移到另一个发行版通常比预期的要容易,前提是两个发行版都通过了技术兼容性工具包测试套件的测试。这些测试被称为 TCK 测试,可证明发行版符合 Java SE 标准的规范。任何发行版,只要通过特定版本的所有测试(通常超过 10 万个测试),即表示其在功能上是等效的,只需在应用程序中更改指针,就可以在发行版之间切换。Azul 副首席技术官 Simon Ritter 在其《OpenJDK 迁移入门指南》一书中阐述了 Azul 经过验证的 OpenJDK 迁移流程。

虽然从 9 月中旬开始,JDK 17 的成本可能会让您感到惊讶,但通过了解 Java 17 和其他 Java LTS 版本的许可条款和支持时间表,您将能够针对所使用的 Java 发行版做出战略性决策,并确保您的 Java 环境长期稳定和安全。