甲骨文开始审核 Java 许可问题:500 强企业“连夜”卸载 Oracle JDK

简介: 甲骨文开始审核 Java 许可问题:500 强企业“连夜”卸载 Oracle JDK

近日,有外媒报道称,甲骨文(Oracle)已开始将 Java 纳入其软件许可审核中,旨在“抓出”那些处于不合规边缘的企业客户,以此来推动企业付费。据了解,这是业内为提升付费率比较常用的策略。

网络异常,图片无法展示
|

据报道,2019 年 4 月甲骨文首次为其商业 Java 平台 Standard Edition(Java SE)引入了两种新的许可模式,并开始对以前免费的 Java 收取许可费。这就要求用户得先购买其商业 Java SE 产品的年度订阅,才能获得补丁和更新。

2021 年 9 月,甲骨文发布了 Java 17 之后,便又开始提供仅针对该迭代的三年的季度免费更新许可证,而不是像 Java 7、8 和 11 这样的早期版本。

到目前为止,甲骨文已经通过其销售团队采取了一种“软方法”来审核其 Java 许可问题。但今年年初以来,越来越多的软件开发工具包不断被纳入甲骨文的官方审核中,因此也引发了许多企业用户的担忧。

今年早些时候,软件资产管理公司 Anglepoint 就表示,他们已经发现了来自甲骨文的官方 Java 审核。

Palisade Compliance 的创始人兼 CEO Craig Guarente 也表示,他的团队也已经开始看到 Oracle License management services(LMS)专门要求提供Java 信息的信件,但一些客户还没有准备好了解他们的许可合规性。

Craig Guarente 透露称:“业内有不少困惑,大家都有一个误解:使用旧版本的 Java 不需要许可证。事实上,即使你使用旧版本,如果你从甲骨文网站下载补丁和更新,那么你依旧需要许可证来支持。而一些企业客户都在担心他们这是在‘开大支票’”。

除了上面的进度,报道称现在 Oracle 还在数据库等其他领域使用审核来访问有关 Java 使用情况的信息。比如那些宣称拥有 5000 个数据库许可证的公司可能会受到甲骨文 Java 销售代表的敲门声 —— “我们听说你这边用了 5000 个 CPU:但我们看不到 Java 许可证。你可以在一周内在不同领域提供 Oracle 信息”。

与 Oracle 的其他产品相比,Java 的许可管理有两个关键区别:尽管数据库和其他 on-prem 软件可能附带永久许可证,但 Java 需要订阅。因此,同时为数据库、中间件或应用程序的审核辩护要求客户从合同开始,但 Java 的应用非常广泛,可能需要对 it 资产进行技术分析。

网络异常,图片无法展示
|

早前,甲骨文业务负责人 Scott Jensen 在接受媒体采访时表示:“有一群组织‘完全忽视了 Java 许可的话题’,给他们的雇主带来了风险。”“你很容易受到各种风险的影响,无论是由于许可证短缺造成的财务风险,还是安全风险。”。

Jensen 透露,在为甲骨文审核流程做了更好准备的组织中,有些正在寻找开源替代方案。“我见过《财富》500 强企业一夜之间基本上就卸载了 Java,然后看会有什么中断,如果中断了,再把 Java 给装回去。但许多企业已经做了某种程度的翻版,将 Oracle Java 去掉,用开放 JDK 或其他同类取代它。”

据 Gartner 的一份研究报告称,用户需要商业订阅才能获得 Oracle Java SE 7、Java SE 8 和 Java SE 11 的关键更新。该报告建议组织通过评估迁移到 Java 17 或切换到第三方 Java 产品的意愿来评估他们的选择。

对此,Gartner 副总兼杰出分析师 Anne Thomas 表示,甲骨文对虚拟化的看法也在推高 Java 的订阅量。与数据库一样,组织必须在不划分虚拟环境的情况下为每个处理器颁发许可证(例如只能在一个集群中颁发许可证)。

Anne Thomas 称:“这就是为什么这些大公司每年要面对超过 1000 万美元的许可费用”。

“但运行时环境需要 Java 订阅,而非软件开发工具包。有些人并没有真正理解,部分原因可能是 Java 运行时环境中的 Java 开发工具包之间的差异:Oracle 的产品被称为 Oracle JDK,尽管它是一个运行时。因此,许多人没有意识到许可实际上适用于运行时”,Anne Thomas 补充称。

相关文章
|
3月前
|
Java Linux
java基础(3)安装好JDK后使用javac.exe编译java文件、java.exe运行编译好的类
本文介绍了如何在安装JDK后使用`javac.exe`编译Java文件,以及使用`java.exe`运行编译好的类文件。涵盖了JDK的安装、环境变量配置、编写Java程序、使用命令行编译和运行程序的步骤,并提供了解决中文乱码的方法。
85 2
|
1月前
|
安全 Java 编译器
JDK 10中的局部变量类型推断:Java编程的简化与革新
JDK 10引入的局部变量类型推断通过`var`关键字简化了代码编写,提高了可读性。编译器根据初始化表达式自动推断变量类型,减少了冗长的类型声明。虽然带来了诸多优点,但也有一些限制,如只能用于局部变量声明,并需立即初始化。这一特性使Java更接近动态类型语言,增强了灵活性和易用性。
111 53
|
2月前
|
Java
让星星⭐月亮告诉你,jdk1.8 Java函数式编程示例:Lambda函数/方法引用/4种内建函数式接口(功能性-/消费型/供给型/断言型)
本示例展示了Java中函数式接口的使用,包括自定义和内置的函数式接口。通过方法引用,实现对字符串操作如转换大写、数值转换等,并演示了Function、Consumer、Supplier及Predicate四种主要内置函数式接口的应用。
32 1
|
3月前
|
Oracle Java 关系型数据库
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
如果遇到"exec format error"问题,文章建议先检查Linux操作系统是32位还是64位,并确保安装了与系统匹配的JDK版本。如果系统是64位的,但出现了错误,可能是因为下载了错误的JDK版本。文章提供了一个链接,指向Oracle官网上的JDK 17 Linux版本下载页面,并附有截图说明。
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
|
3月前
|
安全 Java API
【性能与安全的双重飞跃】JDK 22外部函数与内存API:JNI的继任者,引领Java新潮流!
【9月更文挑战第7天】JDK 22外部函数与内存API的发布,标志着Java在性能与安全性方面实现了双重飞跃。作为JNI的继任者,这一新特性不仅简化了Java与本地代码的交互过程,还提升了程序的性能和安全性。我们有理由相信,在外部函数与内存API的引领下,Java将开启一个全新的编程时代,为开发者们带来更加高效、更加安全的编程体验。让我们共同期待Java在未来的辉煌成就!
77 11
|
3月前
|
监控 Java 大数据
【Java内存管理新突破】JDK 22:细粒度内存管理API,精准控制每一块内存!
【9月更文挑战第9天】虽然目前JDK 22的确切内容尚未公布,但我们可以根据Java语言的发展趋势和社区的需求,预测细粒度内存管理API可能成为未来Java内存管理领域的新突破。这套API将为开发者提供前所未有的内存控制能力,助力Java应用在更多领域发挥更大作用。我们期待JDK 22的发布,期待Java语言在内存管理领域的持续创新和发展。
|
3月前
|
Oracle Java 关系型数据库
【颠覆性升级】JDK 22:超级构造器与区域锁,重塑Java编程的两大基石!
【9月更文挑战第6天】JDK 22的发布标志着Java编程语言在性能和灵活性方面迈出了重要的一步。超级构造器和区域锁这两大基石的引入,不仅简化了代码设计,提高了开发效率,还优化了垃圾收集器的性能,降低了应用延迟。这些改进不仅展示了Oracle在Java生态系统中的持续改进和创新精神,也为广大Java开发者提供了更多的可能性和便利。我们有理由相信,在未来的Java编程中,这些新特性将发挥越来越重要的作用,推动Java技术不断向前发展。
|
4月前
|
Java API Apache
JDK8到JDK24版本升级的新特性问题之在Java中,HttpURLConnection有什么局限性,如何解决
JDK8到JDK24版本升级的新特性问题之在Java中,HttpURLConnection有什么局限性,如何解决
|
4月前
|
Oracle 安全 Java
JDK8到JDK28版本升级的新特性问题之在Java 15及以后的版本中,密封类和密封接口是怎么工作的
JDK8到JDK28版本升级的新特性问题之在Java 15及以后的版本中,密封类和密封接口是怎么工作的
|
4月前
|
Java API 开发者
JDK8到JDK17版本升级的新特性问题之SpringBoot选择JDK17作为最小支持的Java lts版本意味着什么
JDK8到JDK17版本升级的新特性问题之SpringBoot选择JDK17作为最小支持的Java lts版本意味着什么
155 0
JDK8到JDK17版本升级的新特性问题之SpringBoot选择JDK17作为最小支持的Java lts版本意味着什么

推荐镜像

更多