跳到主要內容
Mole
概覽 功能 口碑 定價 常見問題 部落格
EnglishEN 简体中文中 繁體中文繁 日本語日 한국어한 FrançaisFR DeutschDE ItalianoIT EspañolES
立即購買購買 下載

    說明、文件、發佈紀錄與文章

    首頁/部落格

    Mac 上解除安裝 Java,別弄壞工具鏈

    解除安裝發布 2026年8月8日更新 2026年9月5日3 分鐘閱讀

    「在 Mac 上解除安裝 Java」裡藏著兩個問題,答錯了,工具鏈就會壞掉。第一個是你裝了哪一種 Java。第二個是機器上還有什麼指望它在。

    Oracle 自己的說明很短,其中最重要的那一行不是步驟,而是警告:有個目錄別去動。

    開始刪除支援檔案前,先對照 Oracle JDK 的現行官方解除安裝說明。如果廠商提供自己的解除安裝程式或 App 內命令,應先走那條路徑,再處理能確認擁有者的殘留。

    這份 Oracle 文件只涵蓋透過 Oracle .pkg 安裝的 JDK,不代表 Temurin、Homebrew 或 App 內建執行環境。

    不要從 /usr/bin 移除 Java

    Oracle 直接寫明:不要試圖用刪除 /usr/bin 裡的 Java 工具來解除安裝 Java。那個目錄屬於系統軟體的一部分,任何更動都會在下次 macOS 更新時被 Apple 還原。

    這是最常見的搞砸方式。輸入 which java 會回傳 /usr/bin 底下的路徑,看起來像答案,其實不是。在 macOS 上那些是指向實際已安裝 runtime 的 stub。刪掉它們只是拿掉路標,不是拆掉建築,而且 macOS 之後還會再放回去。

    先搞清楚要移除的是哪一種 Java

    Runtime 與開發套件是不同的安裝,移除方式也不同。

    Oracle JRE(帶瀏覽器外掛與偏好設定面板的消費者 runtime)存在 Oracle 點名的三處:

    /Library/Internet Plug-Ins/JavaAppletPlugin.plugin
    /Library/PreferencePanes/JavaControlPanel.prefPane
    ~/Library/Application Support/Oracle/Java
    

    JDK 是另一回事,安裝在 /Library/Java/JavaVirtualMachines/ 底下,移除需要管理員權限。你可以同時裝好幾套,這很正常,而且常常是刻意的。

    系統目錄裡的命令列 stub 指向安裝在 Library Java Virtual Machines 底下的 JDK,而 Oracle runtime 外掛與偏好設定面板是另一套安裝。
    系統目錄裡的指令是指標,不是 runtime。移除 JDK 才是拿掉真正的安裝;只刪指標只會弄斷路標,而 macOS 會再把它們放回去。

    先列出實際已安裝的內容再決定:

    /usr/libexec/java_home -V
    

    這會列出系統已知的 JDK,包含版本與路徑,不論有幾筆,都要先確認常用軟體是否依賴準備移除的版本。

    移除錯的 JDK 會弄壞其他軟體

    Java 很少是為了自己而裝。Android 工具鏈、Elasticsearch、Minecraft 啟動器、JetBrains IDE、Apache 工具,以及若干企業 VPN 與列印用戶端,都內附或依賴 JVM。有些自帶一份,不受影響。有些解析系統提供的版本,一變就停工。

    若 JDK 是用套件管理器裝的,就用同一個方式移除。Homebrew 安裝的 temurin 用 brew uninstall 拿掉;手動抽走檔案會讓套件資料庫仍以為它還在。

    用支援的方式移除 JDK

    對從 .pkg 安裝的 JDK,移除對象是 /Library/Java/JavaVirtualMachines/ 底下名稱帶版本號的那個目錄,而且需要 sudo。一次移除一個版本,確認對你重要的工具都還正常,再動下一個。

    完成後,/usr/libexec/java_home -V 不應再列出它,而你在 shell profile 裡手動設的任何 JAVA_HOME 現在會指到空處。那個變數是「清乾淨後工具鏈卻失敗」的第二常見原因。

    關掉終端機之前先檢查

    /usr/libexec/java_home -V
    java -version
    

    第一條顯示還剩什麼。第二條要嘛回報版本,要嘛告訴你沒有已安裝的 runtime;在你本來就要清乾淨的機器上,那是正確答案,不是錯誤。

    佔用空間總覽在哪裡有用

    Java 的相關檔案分散在快取、偏好設定、外掛和設定面板等位置,先看終端機列出的執行環境,再確認各項歸屬。如果還想查看某個 JDK 或內建 JDK 的 App 佔了多少空間,可以用 Mole 掃描後展開對應資料夾。

    之後要檢查的三個地方

    第一個是 shell 設定檔。寫在 ~/.zshrc 或 ~/.zprofile 裡的手寫 JAVA_HOME,不會跟著 JDK 一起消失。它會繼續指向一個已經不存在的路徑,每個新開啟的 shell 都會繼承這個壞掉的變數。刪掉那一行,或改成 export JAVA_HOME=$(/usr/libexec/java_home),讓它跟著系統目前有的 JDK 走。

    第二個是 IDE。JetBrains 工具和 Android Studio 會依專案記錄特定的 JDK 路徑,不會跟著系統變更更新,結果就變成指令列一切正常,某個專案卻建置失敗。

    第三個是套件管理工具裝進來的東西。 brew list | grep -i -E 'jdk|temurin|zulu|openjdk' 可以看出 Homebrew 裝了哪些。 要用 brew uninstall 解除安裝;手動刪資料夾會讓套件資料庫仍以為它們還在。

    Mole 清理快取和 App 殘留檔案,不少使用者一次就清出了上百 GB。

    下載試用 Mole

    繼續閱讀

    • 解除安裝如何在 Mac 上徹底解除安裝 App,又不誤刪資料5 分鐘閱讀
    • 解除安裝怎麼在 Mac 上解除安裝防毒軟體又不弄壞網路11 分鐘閱讀
    • 解除安裝解除安裝 Dropbox 卻不弄丟本機檔案3 分鐘閱讀

    Mole · 鼴

    清理 Mac,管理 App,查看運作狀態

    v1.14.0 (241) · 發佈紀錄

    產品

    Mac 清理 App 解除安裝 Mac 最佳化 磁碟分析 系統監控

    支援

    說明 功能文件 發佈紀錄 部落格

    法律

    服務條款 隱私權政策 退款政策

    資源

    命令列工具 Faberon 出品 推廣聯盟

    聯絡

    Twitter hi@mole.fit

    Mole 唯一官網 mole.fit · 請勿下載來源不明的安裝檔

    命令列版會繼續免費開源。