如何在 OS X 中为 Java 8 安装 unlimited strength JCE?
How to install unlimited strength JCE for Java 8 in OS X?
我需要为 OS X
/ mac OS
中的 Java 8
安装 Java 加密扩展 。事实证明,installer 随附的 README 文件中的步骤仅包括 Unix
和 Windows
的说明,但不包括 [=13] =] / mac OS
。我试图将 JAR 文件放入 $JAVA_HOME/lib/security
,但它也不起作用。你知道我该如何安装它们吗?
因为你没有解释你的问题是什么,所以一些猜测。
- 使用 Internet 搜索引擎您可能会找到此页面 http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html
- 您可能已经下载了这个文件
jce_policy-8.zip
- 也许您会解压缩它并查看目录
UnlimitedJCEPolicyJDK8/
- 也许文件
README.txt
会引起您的兴趣
如果所有这些步骤都是正确的,那么您会发现
3) Install the unlimited strength policy JAR files.
In case you later decide to revert to the original "strong" but
limited policy versions, first make a copy of the original JCE
policy files (US_export_policy.jar and local_policy.jar). Then
replace the strong policy files with the unlimited strength
versions extracted in the previous step.
The standard place for JCE jurisdiction policy JAR files is:
<java-home>/lib/security [Unix]
<java-home>\lib\security [Windows]
您可以假定 OSX 上的位置与列出的系统相同。
注意:自 Java JDK 版本 8u161 无限加密默认启用
对于 MacOS 用户
如果您是 MacOS 用户,如果您的 java 版本是 8,请放置从 jce_policy-8.zip 中提取的 jar。* 使用下面的路径(将 jar 放在它下面)
/Library/Java/JavaVirtualMachines/**< jdk_version_of_your_pc >**/Contents/Home/jre/lib/security
对于更高版本的 macOS(例如 Sierra),Oracle Java 安装在两个位置,具体取决于您安装的是 JRE 还是 JDK。
- JRE:
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/
- JDK:
/Library/Java/JavaVirtualMachines/jdk1.x.x_xxx.jdk/Contents/Home/
- 如果安装 JDK,它还会在上面列出的 JRE 位置安装 JRE。
JRE 允许您双击以从 Finder 和 运行 Java 在浏览器中打开 jar。 JRE 不附带 java
二进制文件,因此如果您想要 运行 任何典型的 Java 命令,您必须安装 JDK。更多信息见 https://java.com/en/download/faq/yosemite_java.xml.
综上所述,当安装无限强度的 JCE 文件时,将它们安装在上面列出的两个目录中以获得一致的行为。
Java 8 更新 161
正如 and in Oracle's release notes for Java 8 Update 161 中所指出的,自 Update 161 以来默认启用无限加密,如果使用此版本或更高版本的全新安装,您无需执行任何操作。
Java 8 次更新 151
使用 Java 8 Update 151,Oracle 在 Java 8 中包含了与 Java 9 一起提供的相同 JCE 机制。要在 Java 8 中启用 JCE更新 151 或更高版本,只需设置 属性
crypto.policy=unlimited
在 $JAVA_HOME/jre/lib/security/java.security
.
如 Oracle 在 release notes:
中所述,如果较早添加了旧策略 JAR,则删除它们可能是个好主意
Because the old JCE jurisdiction files are left in
/lib/security, they may not meet the latest security JAR
signing standards, which were refreshed in 6u131, 7u121, 8u111, and
later updates.
旧版本
建议通过 Homebrew 安装 JCE 文件的答案将不再有效,因为在 Java 8 Update 151 发布后,这些木桶已从 Homebrew 存储库中删除。如果使用旧版本的 Java 8,您必须按照 .
中的描述手动放置 JCE-Policy-JAR
如果您是 windows 用户:
在 http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html
下载最新的 JCE
解压zip文件并将两个jar文件复制到以下目录
\程序Files\Java\jre1.8.0_131\lib\security
Mac 用户 (OS X) Java 8:
$ brew reinstall java8
从 JDK 1.8u151 开始,无需单独下载 JCE 库。简单编辑
$JDK_HOME/jre/lib/security/java.security
并取消注释行:
crypto.policy=unlimited
这将启用无限强度的 JCE。
从 Java 8u152 开始,只需在
的 java.security
文件中设置 crypto.policy=unlimited
即可启用无限强度
/Library/Java/JavaVirtualMachines/<jdk_version>/Contents/Home/jre/lib/security
它已经在该文件中但被注释掉了。
见http://www.oracle.com/technetwork/java/javase/8u152-relnotes-3850503.html#JDK-8157561
从 Java JDK 版本 8u161 unlimited cryptography is enabled by default 开始,不再需要其他建议的方法(除非您想禁用它)。
这个变化也appears to be included in other major JDK versions from JDK 6 to JDK 9.
我需要为 OS X
/ mac OS
中的 Java 8
安装 Java 加密扩展 。事实证明,installer 随附的 README 文件中的步骤仅包括 Unix
和 Windows
的说明,但不包括 [=13] =] / mac OS
。我试图将 JAR 文件放入 $JAVA_HOME/lib/security
,但它也不起作用。你知道我该如何安装它们吗?
因为你没有解释你的问题是什么,所以一些猜测。
- 使用 Internet 搜索引擎您可能会找到此页面 http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html
- 您可能已经下载了这个文件
jce_policy-8.zip
- 也许您会解压缩它并查看目录
UnlimitedJCEPolicyJDK8/
- 也许文件
README.txt
会引起您的兴趣
如果所有这些步骤都是正确的,那么您会发现
3) Install the unlimited strength policy JAR files.
In case you later decide to revert to the original "strong" but
limited policy versions, first make a copy of the original JCE
policy files (US_export_policy.jar and local_policy.jar). Then
replace the strong policy files with the unlimited strength
versions extracted in the previous step.
The standard place for JCE jurisdiction policy JAR files is:
<java-home>/lib/security [Unix]
<java-home>\lib\security [Windows]
您可以假定 OSX 上的位置与列出的系统相同。
注意:自 Java JDK 版本 8u161 无限加密默认启用
对于 MacOS 用户
如果您是 MacOS 用户,如果您的 java 版本是 8,请放置从 jce_policy-8.zip 中提取的 jar。* 使用下面的路径(将 jar 放在它下面)
/Library/Java/JavaVirtualMachines/**< jdk_version_of_your_pc >**/Contents/Home/jre/lib/security
对于更高版本的 macOS(例如 Sierra),Oracle Java 安装在两个位置,具体取决于您安装的是 JRE 还是 JDK。
- JRE:
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/
- JDK:
/Library/Java/JavaVirtualMachines/jdk1.x.x_xxx.jdk/Contents/Home/
- 如果安装 JDK,它还会在上面列出的 JRE 位置安装 JRE。
JRE 允许您双击以从 Finder 和 运行 Java 在浏览器中打开 jar。 JRE 不附带 java
二进制文件,因此如果您想要 运行 任何典型的 Java 命令,您必须安装 JDK。更多信息见 https://java.com/en/download/faq/yosemite_java.xml.
综上所述,当安装无限强度的 JCE 文件时,将它们安装在上面列出的两个目录中以获得一致的行为。
Java 8 更新 161
正如
Java 8 次更新 151
使用 Java 8 Update 151,Oracle 在 Java 8 中包含了与 Java 9 一起提供的相同 JCE 机制。要在 Java 8 中启用 JCE更新 151 或更高版本,只需设置 属性
crypto.policy=unlimited
在 $JAVA_HOME/jre/lib/security/java.security
.
如 Oracle 在 release notes:
中所述,如果较早添加了旧策略 JAR,则删除它们可能是个好主意Because the old JCE jurisdiction files are left in /lib/security, they may not meet the latest security JAR signing standards, which were refreshed in 6u131, 7u121, 8u111, and later updates.
旧版本
建议通过 Homebrew 安装 JCE 文件的答案将不再有效,因为在 Java 8 Update 151 发布后,这些木桶已从 Homebrew 存储库中删除。如果使用旧版本的 Java 8,您必须按照
如果您是 windows 用户:
在 http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html
下载最新的 JCE解压zip文件并将两个jar文件复制到以下目录
\程序Files\Java\jre1.8.0_131\lib\security
Mac 用户 (OS X) Java 8:
$ brew reinstall java8
从 JDK 1.8u151 开始,无需单独下载 JCE 库。简单编辑
$JDK_HOME/jre/lib/security/java.security
并取消注释行:
crypto.policy=unlimited
这将启用无限强度的 JCE。
从 Java 8u152 开始,只需在
的java.security
文件中设置 crypto.policy=unlimited
即可启用无限强度
/Library/Java/JavaVirtualMachines/<jdk_version>/Contents/Home/jre/lib/security
它已经在该文件中但被注释掉了。
见http://www.oracle.com/technetwork/java/javase/8u152-relnotes-3850503.html#JDK-8157561
从 Java JDK 版本 8u161 unlimited cryptography is enabled by default 开始,不再需要其他建议的方法(除非您想禁用它)。
这个变化也appears to be included in other major JDK versions from JDK 6 to JDK 9.