最近Java时常提醒要升级本机的JDK8,点开一看,里面还是用些门道的:简单地说就是,如果还想免费使用JDK8和分发JDK8开发的应用,那么就不能升级。
对话框是这个样子
可以免费升级JDK8,但是升级以后不免费
点击“更新”出现的窗口
然后仔细看了一下这个更新的JDK8许可协议(https://www.oracle.com/downloads/licenses/javase-license1.html,相关条款更新于2019年4月10日,附后)。大体意思是,如果更新JDK8的这个升级包,那么使用者就必须遵守(1)仅用于个人使用(2)仅用于开发用途(3)在Oracle同意的产品中使用 and/or(4)Oracle云基础设施(可以在Oracle云上,利用Oracle IaaS和PaaS产品的开发)。使用不可以做(1)不能删除相关产品使用说明和权利说明(2)不能给第三方使用(3)不能向第三方分发(4)不能逆向工程(5)不能修改java、javax、sun、oracle名字下各种java包、类、接口和子包。而且JDK8是收到美国出口管控的,这个大家现在都知道含义和威力了。例如BIS、DoD的实体清单。
那么接受JDK8更新版的需求,需要付出多少经济代价呢?我们可以在这里找到Java SE的报价(https://www.oracle.com/corporate/pricing/#technology)。首先这不是一次性报价,而是云报价(根据用量每月付费):
- SE桌面版订阅:最贵每人每月2.5美元;
- SE其他订阅:最贵每处理器每月25美元;这里的CPU就是一个物理CPU,但是要结合用户数,一个服务器最少要设置10个用户。
- 注意在Oracle许可中,处理器通常并不是一个CPU,而是CPU的每个core都要计算,但是这里面有一个权重表格(https://www.oracle.com/us/corporate/contracts/processor-core-factor-table-070634.pdf),大体意思是Intel的AMD的多核处理器,每个核按照0.5系数。Oracle自己的处理器优惠价,系数0.25,Oracle给别人定制的Sparc,系数0.5,IBM的按照1.0系数。如果服务器有2个24核CPU
暂时没需求,还取消安装吧
这是本机的JDK版本,版本差别很小
License Rights and Restrictions Oracle grants You a nonexclusive, nontransferable, limited license to use the Programs, subject to the restrictions stated in this Agreement and Program Documentation, only for:
(i) Personal Use,
(ii) Development Use,
(iii) Oracle Approved Product Use, and/or
(iv) Oracle Cloud Infrastructure Use.
You may allow Your Contractor(s) to use the Programs, provided they are acting on Your behalf to exercise license rights granted in this Agreement and further provided that You are responsible for their compliance with this Agreement in such use. You will have a written agreement with Your Contractor(s) that strictly limits their right to use the Programs and that otherwise protects Oracle’s intellectual property rights to the same extent as this Agreement. You may make copies of the Programs to the extent reasonably necessary to exercise the license rights granted in this Agreement.
You may not:
- remove or modify any Program markings or any notice of Oracle’s or a licensor’s proprietary rights;
- make the Programs available in any manner to any third party (other than Contractors acting on Your behalf as set forth in this Agreement);
- assign this Agreement or distribute, give, or transfer the Programs or an interest in them to any third party, except as expressly permitted in this Agreement for Contractors (the foregoing shall not be construed to limit the rights You may otherwise have with respect to Separately Licensed Third Party Technology);
- cause or permit reverse engineering (unless required by law for interoperability), disassembly or decompilation of the Programs; and
- create, modify, or change the behavior of, classes, interfaces, or subpackages that are in any way identified as “java”, “javax”, “sun”, “oracle” or similar convention as specified by Oracle in any naming convention designation.
The Programs may contain source code that, unless expressly licensed in this Agreement for other purposes (for example, licensed under an open source license), is provided solely for reference purposes pursuant to the terms of this Agreement and may not be modified.
All rights not expressly granted in this Agreement are reserved by Oracle. If You want to use the Programs for any purpose other than as expressly permitted under this Agreement, You must obtain from Oracle or an Oracle reseller a valid Program license under a separate agreement permitting such use.
OwnershipOracle or its licensors retain all ownership and intellectual property rights to the Programs.
Third-Party Technology The Programs may contain or require the use of third party technology that is provided with the Programs. Oracle may provide certain notices to You in Program Documentation, readmes or notice files in connection with such third party technology. Third party technology will be licensed to You either under the terms of this Agreement or, if specified in the Program Documentation, readmes or notice files, under Separate Terms. Your rights to use Separately Licensed Third Party Technology under Separate Terms are not restricted in any way by this Agreement. However, for clarity, notwithstanding the existence of a notice, third party technology that is not Separately Licensed Third Party Technology shall be deemed part of the Programs and is licensed to You under the terms of this Agreement.
Source Code for Open Source SoftwareFor software that You receive from Oracle in binary form that is licensed under an open source license that gives You the right to receive the source code for that binary, You can obtain a copy of the applicable source code from https://oss.oracle.com/sources/ or http://www.oracle.com/goto/opensourcecode. If the source code for such software was not provided to You with the binary, You can also receive a copy of the source code on physical media by submitting a written request pursuant to the instructions in the “Written Offer for Source Code” section of the latter website.
Export Controls Export laws and regulations of the United States and any other relevant local export laws and regulations apply to the Programs. You agree that such export control laws govern Your use of the Programs (including technical data) and any services deliverables provided under this agreement, and You agree to comply with all such export laws and regulations (including “deemed export” and “deemed re-export” regulations). You agree that no data, information, program and/or materials resulting from Programs or services (or direct products thereof) will be exported, directly or indirectly, in violation of these laws, or will be used for any purpose prohibited by these laws including, without limitation, nuclear, chemical, or biological weapons proliferation, or development of missile technology. Accordingly, You confirm:
- You will not download, provide, make available or otherwise export or re-export the Programs, directly or indirectly, to countries prohibited by applicable laws and regulations nor to citizens, nationals or residents of those countries.
- You are not listed on the United States Department of Treasury lists of Specially Designated Nationals and Blocked Persons, Specially Designated Terrorists, and Specially Designated Narcotic Traffickers, nor are You listed on the United States Department of Commerce Table of Denial Orders.
- You will not download or otherwise export or re-export the Programs, directly or indirectly, to persons on the above mentioned lists.
- You will not use the Programs for, and will not allow the Programs to be used for, any purposes prohibited by applicable law, including, without limitation, for the development, design, manufacture or production of nuclear, chemical or biological weapons of mass destruction.
《JDK8的更新版本也要服从新的许可协议》有1个想法