java - 如何检查JavaSE商业功能是否启用?

标签 java intellij-idea

鉴于最近 Oracle 对 Java 用户的明显镇压 ( read here ),我对继续使用 Oracle 的 JDK - 或任何与 Oracle 相关的东西持谨慎态度。上述文章警告:

“If you download Java, you get everything – and you need to make sure you are installing only the components you are entitled to and you need to remove the bits you aren’t using,” our anonymous expert warned.

我仅在我的个人笔记本电脑上使用 OracleJDK 供个人使用。我没有把代码给任何人。期间。

有没有一种简单的方法来检查我是否启用了任何商业功能?我使用 IntelliJ IDEA CE。我不想意外激活它们,所以我寻求您的帮助。谢谢。

最佳答案

所以oracle's java BCLA陈述如下。 enter image description here

这意味着您几乎可以使用该软件做任何您想做的事情,只要您是使用该软件的人并且不违反任何后续条款,例如对所提供的软件进行逆向工程/反编译。

现在谁向 Oracle 支付 JDK 费用?好吧,让我们看看突出显示的部分。 Oracle 授予您非独占、不可转让、有限的许可,无需支付许可费用,即可在内部复制和使用完整且未经修改的软件,仅用于运行程序。 第一部分 非-独占这意味着您不是唯一获得许可的人。 不可转让 这意味着您不得将您的许可授予其他人。 有限许可这意味着 Oracle 可以取消您的许可,并且您与知识产权的关系不受限制。 免费 免费! 在内部复制和使用完整且未经修改的软件,其唯一目的是运行程序。这意味着您可以使用自己的 jdk 来运行您的 java 代码。因此,如果您说一所学校收取学费并将 jdk 作为类(class)的一部分,那么您将因将 jdk 作为收费交付包的一部分提供给外部消费者(学生)而欠下版税。

现在是你担心的下一部分了。 本第 2 节中规定的许可不扩展到商业功能。深入挖掘我们发现的商业功能的描述 this page.其中包括以下部分,任何人都会有点担心。

enter image description here

虽然这看起来令人震惊,但当您下载 Java SE 高级版或 Java SE 套装时,您可能已经与 Oracle 进行过这样的交谈。在 [vanilla] Java SE 下的页面的前面,它说“Java SE 可以在内部免费使用来运行应用程序,并且可以根据 Java SE 平台产品的 Oracle 二进制代码许可协议(protocol)(“Java BCLA”)重新分发'

要解决您关于商业功能是否启用的最初问题,您可以查看 vm options您在运行时使用的,因为这是 commercial addon's are enabled 的位置。

请勿修改 Oracle 分发给您的软件,因为向您提供的许可用于“完整且未经修改”地使用该软件。

关于java - 如何检查JavaSE商业功能是否启用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41614399/

相关文章:

java - Selenium webDriver 2.46 卡在使用 switchto.window 切换窗口上

spring-boot - @ConfigurationProperties Spring Boot 配置注释处理器在类路径中找不到

java - 在 IntelliJ 中将 JAR 添加到 WEB-INF/lib 目录的正确步骤是什么

intellij-idea - 设备配置没有显示默认设备。如何解决这个问题?

java - 如何通过 Activity 传递 List<自定义对象>

java - Spring JPA - 具有该位置 [1] 的参数不存在

java - 如何从文本区域创建到其他阶段的超链接

java - 由 : com. 引起 mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: 'purchased1_.DTYPE' 中的未知列 'field list'

java - 在 Android Studio 中将常量类重构为枚举

java - Android 中出现意外的顶级异常 : bad class file magic,