macos 从 java 7u45 起已移除图形化 java 控制面板,无法通过系统偏好设置访问;jre 更新与安全设置需通过终端命令、编辑 $java_home/jre/lib/security/java.security 文件及配置 java_home 环境变量完成。

Mac 没有“控制面板”来管理 Java JRE 更新与安全设置——这是 Windows 用户的惯性认知,直接套用会导致找不到入口、误装软件、甚至破坏系统 Java 环境。
Java 控制面板在 macOS 上根本不存在
macOS 从 Java 7u45(2013 年起)就移除了图形化的 Java 控制面板(Java Control Panel)。Oracle 官方明确说明:该面板仅面向 Windows 和 Linux(部分发行版),macOS 用户无法通过系统偏好设置或任何 GUI 工具调出它。
- 你点击“系统偏好设置 → Java”,看到的是一个已废弃的占位图标,双击后通常提示“未安装 Java”或直接无响应
- 即使手动安装过旧版 JDK/JRE,
java -version能查到版本,ControlPanel进程也不会启动 - 试图从 Oracle 历史归档下载
jre-7uXX-macosx-x64.dmg并安装,仍不会恢复该面板——苹果限制了相关 API 权限
替代方案:用终端命令 + 配置文件管理 JRE 与安全策略
macOS 下 Java 的运行时行为由 JVM 启动参数、java.security 文件和环境变量共同控制,不是靠图形界面开关。
- 安全级别(如 TLS 版本、证书验证、沙箱策略)由
$JAVA_HOME/jre/lib/security/java.security文件决定,修改前务必备份 - 禁用不安全算法(如 SSLv3、MD5withRSA)需编辑该文件中的
jdk.tls.disabledAlgorithms和jdk.certpath.disabledAlgorithms行 - JRE 更新只能通过手动下载官方
.dmg或使用brew install openjdk(推荐 OpenJDK),softwareupdate不管 Java - 切换默认 JRE 必须设
JAVA_HOME:运行export JAVA_HOME=$(/usr/libexec/java_home -v 17),加到~/.zshrc才持久生效
常见错误:把浏览器插件设置当成 JRE 安全设置
很多人想关掉“Java 小程序运行权限”,结果去 Safari 设置里找 Java 插件——但自 macOS 10.10 Yosemite 起,所有主流浏览器(Safari、Chrome、Firefox)均已彻底移除对 NPAPI 插件的支持,java-plugin 已失效多年。
立即学习“Java免费学习笔记(深入)”;
- 你在浏览器里看到的“需要启用 Java”提示,基本是老旧内部系统或测试页面,实际无法运行
- 试图重装
JavaAppletPlugin.plugin不仅无效,还可能触发 Gatekeeper 警告或签名失效 - 真正影响 Java 应用安全的是 JVM 启动参数(如
-Djava.security.manager)和java.policy文件,不是浏览器开关
最常被忽略的一点:macOS 自带的 /usr/bin/java 只是个符号链接,指向 /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java,而该路径下没有可编辑的 java.security ——你必须用 /usr/libexec/java_home 找到真实安装路径才能改配置。别在错误的位置折腾。










