Xóa JDK Java 8 khỏi Mac


247

Vì vậy, tôi đã cài đặt bản beta của JDK 8 một lúc trước để xem xét một số ví dụ. Tôi nghĩ chắc chắn bây giờ, thật dễ dàng để thay đổi giữa các phiên bản.

Thực hiện một số phát triển Chơi với IntelliJ. Vì một số lý do, IntelliJ đang biên dịch với 8 mặc dù:

  • Tôi có trình biên dịch được đặt trong Preferences để sử dụng 1.6
  • Giả sử nó sử dụng SBT thông qua bản dựng bên ngoài, nhưng sbt từ dòng lệnh hoạt động
  • JAVA_HOME đang trỏ đến JDK 6.

Nếu tôi đi đến trang Tùy chọn Java, nó sẽ hiển thị 8 cài đặt, nhưng không có tùy chọn để gỡ cài đặt và nó không thấy bất kỳ phiên bản nào khác.

Khi tôi làm which java, nó cho tôi biết /usr/bin/javavà tôi làm /usr/bin/java -versionvà nó trả về 1.6.

Lưu ý: với một chút khó khăn, bạn có thể sử dụng IntelliJ và JDK7, xem tại đây .


1
Tại sao bạn muốn sử dụng JDK 6? Nó đã được EOL'd, xem oracle.com/technetwork/java/eol-135779.html . Nếu bạn không muốn có phiên bản beta (JDK 8), bạn nên chuyển sang JDK 7.
kmorris

1
JDK7 trên Mac vẫn còn là một mớ hỗn độn. Đã có rất nhiều vấn đề với nó. Nhưng tôi sẽ mất 7 điểm vào thời điểm này. (Mặc dù, trong trường hợp bạn không biết, JetBrains vẫn nói rằng họ không hỗ trợ nó trên mac ..!)
Rob

3
Cũng xem xét việc cài đặt jdk như một thùng homebrew - (un) cài đặt / nâng cấp sau đó là một lệnh brew đơn giản.
Agoston Horvath

2
Có vẻ như sử dụng Homebrew& Jenvđể quản lý Javaphiên bản đã cài đặt là cách tốt nhất. xem hanxue-it.blogspot.ch/2014/05/ khăn
Adrien Be

1
Tôi thấy hữu ích khi tham khảo các công thức java homebrew-cask về cách họ gỡ cài đặt jdk. jdk9 & jdk8 .
Bruce Sun

Câu trả lời:


658

Tôi đã có thể hủy bỏ jdk 8 trong mavericks thực hiện thành công các bước sau:

Chạy lệnh này để loại bỏ JDK

sudo rm -rf /Library/Java/JavaVirtualMachines/jdk<version>.jdk

Chạy các lệnh này nếu bạn muốn xóa plugin

sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -rf /Library/LaunchAgents/com.oracle.java.Java-Updater.plist
sudo rm -rf /Library/PrivilegedHelperTools/com.oracle.java.JavaUpdateHelper
sudo rm -rf /Library/LaunchDaemons/com.oracle.java.Helper-Tool.plist
sudo rm -rf /Library/Preferences/com.oracle.java.Helper-Tool.plist

2
Vấn đề duy nhất là bây giờ nó sẽ không cho phép tôi cài đặt jdk7. Tôi chạy trình cài đặt nhưng dòng lệnh vẫn nói "Không có thời gian chạy Java, yêu cầu cài đặt" ... mặc dù nó không yêu cầu cài đặt.
địa lý

4
Điều này thực sự tồi tệ vì bạn cũng đang xóa ngăn tùy chọn trong Tùy chọn hệ thống. Chỉ cần chạy lệnh đầu tiên và bỏ qua những người khác.
Aquarelle

1
Ngoài ra, sau các bước này, MAC sẽ tự động lấy java thay thế làm mặc định nếu đã được cài đặt.
Ashokchakravarthi Nagarajan

6
Để rõ ràng, đây là để gỡ cài đặt tất cả các công cụ Java. Nếu bạn vì một lý do nào đó muốn giữ một phiên bản Java khác, đừng xóa bất cứ thứ gì ngoại trừ chính JDK (lệnh đầu tiên).
mikl

1
Bạn đã cứu tôi khỏi một cơn đau đầu rất
lớn..god

85

Bạn chỉ cần sử dụng các lệnh này

sudo rm -rf /Library/Java/*
sudo rm -rf /Library/PreferencePanes/Java*
sudo rm -rf /Library/Internet\ Plug-Ins/Java*

2
cái này hoạt động với tôi trên OSX El Capitan, cảm ơn :)
PirateApp

10
Bằng cách này, bạn sẽ loại bỏ TẤT CẢ java jdk, không chỉ 8. Cẩn thận.
Andres

Làm thế nào để cài đặt lại sau khi hoạt động như vậy?
Ruslan Leshchenko

14

Quản lý các phiên bản Java trên Mac OSX là một cơn ác mộng. Gần đây tôi đã chuyển sang sử dụng JDK 1.7, xóa hoàn toàn JDK 6 khỏi MacBook của tôi (tôi cũng có dấu vết của JDK 5 - máy tính xách tay này đã được cập nhật một vài lần).

Đây là những gì tôi đã làm để chuyển sang JDK 7.

1) tải xuống bản mới nhất từ ​​Oracle ( http://www.oracle.com/technetwork/java/javase/doads/index.html ) và cài đặt nó.

2) Xóa (sử dụng rm - nếu bạn đã có bản sao lưu, bạn có thể hoàn nguyên nếu bạn mắc lỗi) tất cả các tệp JDK6 và JRE6.

Ở giai đoạn này, bạn sẽ thấy:

% ls /Library/Java/JavaVirtualMachines/
jdk1.7.0_nn.jdk

(và không có gì khác)

3) Trong thư mục / Thư viện / Java / Tiện ích mở rộng /, bạn sẽ cần xóa tất cả các tệp jar cũ, những tệp tương ứng với các bản phát hành khác của Java. Nếu bạn không, bạn sẽ nhận được thông báo nổi tiếng về phiên bản tools.jar sai (xem Bản dựng bị lỗi sau khi nâng cấp lên Java7, Thiếu công cụ.jar và các phiên bản lớp xấu ). Việc đổi tên các tệp jar là không đủ, vì Java sẽ mở mọi tệp trong thư mục đó - Tôi đã chuyển tệp của tôi vào một thư mục con. An toàn để loại bỏ chúng một khi bạn biết mọi thứ khác hoạt động.

Tôi không tìm thấy tôi cần đặt JAVA_HOME cho những điều đơn giản.

Lưu ý : Tôi vừa thử chạy IntelliJ và nó sẽ không khởi động trừ khi bạn đã cài đặt JDK 6 của Apple (xem http://youtrack.jetbrains.com/su/IDEA-93710 ). Điều này cũng đúng với Eclipse. Netbeans hoạt động tốt.


1
Đã chỉnh sửa câu hỏi ban đầu để bao gồm một liên kết đến một câu hỏi SO khác về việc đưa IntelliJ sử dụng JDK7 (trên Mac).
Cướp

3
Quản lý phiên bản Java trên Mac là một NIGHTMARE ABSOLUTE. Tôi đã có thể cài đặt Oracle Java 8 và quản lý các phiên bản Java khác nhau trên Ubuntu trong vòng chưa đầy 5 phút. Tôi đã dành vài giờ để cố gắng khởi chạy Oracle Java 8 trên OSX.
JohnMerlino

11

Sử dụng /usr/libexec/java_home; Tôi thấy những bí danh và chức năng này khá hữu ích trong ~/.profile:

alias java_ls='/usr/libexec/java_home -V 2>&1 | cut -s -d , -f 1 | cut -c 5-'
function java_use() {
    export JAVA_HOME=$(/usr/libexec/java_home -v $1)
    java -version
}

Tôi nghĩ rằng điều này sẽ chỉ hoạt động cho môi trường shell của bạn chứ không phải môi trường mà một ứng dụng (như Intellij) có được khi bạn nhấp đúp vào biểu tượng của nó.
NBW

@NBW Các ứng dụng Java AFAIK trên OSX có Phiên bản Java riêng được đặt trong tệp Info.plist của họ (hoặc một cái gì đó dọc theo các dòng đó, ví dụ như phạm vi phiên bản nào chúng hỗ trợ hoặc thứ gì đó). Thay đổi đối với JAVA_HOME sẽ chỉ áp dụng cho phiên cuối cùng hiện tại, nhưng tôi nghĩ / usr / libexec / java_home có thể ảnh hưởng đến các phiên / môi trường khác. (Tôi không thể dễ dàng xác minh nó, vì tôi buộc java_use 1.7 trong ~ / .profile của tôi)
Grégory Joseph

Và nếu bạn cũng muốn xem JDK là 32 bit hay 64 bit, một số thứ alias java_ls='/usr/libexec/java_home -V 2>&1 | sed "/^ \(.*\) \(.*\),/!d;/^\s*$/d;s/^ \(.*\) \(.*\), \(.*\):\(.*\)$/\2 (\3)/g"'sẽ được thực hiện.
Moreaki

10

Tôi đã thu thập mọi thứ Java, JDK và orory. Tôi đã chạy Java 8 trên OSX El Capitan

Những câu trả lời khác bị thiếu hàng tấn thứ. Câu trả lời này bao gồm rất nhiều căn cứ.

Tạm biệt, xẻng.

sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -rf /Library/LaunchAgents/com.oracle.java.Java-Updater.plist
sudo rm -rf /Library/LaunchDaemons/com.oracle.java.Helper-Tool.plist
sudo rm -rf /Library/Preferences/com.oracle.java.Helper-Tool.plist
sudo rm -rf /System/Library/Frameworks/JavaVM.framework
sudo rm -rf /usr/bin/java
sudo rm -rf /usr/bin/javac
sudo rm -rf /usr/bin/javadoc
sudo rm -rf /usr/bin/javah
sudo rm -rf /usr/bin/javap
sudo rm -rf /usr/bin/javaws
sudo rm -rf /var/db/receipts/com.oracle.jdk8u65.bom
sudo rm -rf /var/db/receipts/com.oracle.jdk8u65.plist
sudo rm -rf /var/db/receipts/com.oracle.jre.bom
sudo rm -rf /var/db/receipts/com.oracle.jre.plist
sudo rm -rf /var/root/Library/Preferences/com.oracle.javadeployment.plist
sudo rm -rf ~/Library/Preferences/com.oracle.java.JavaAppletPlugin.plist
sudo rm -rf ~/Library/Preferences/com.oracle.javadeployment.plist
sudo rm -rf ~/.oracle_jre_usage

2
không có quyền xóa tệp này "/ System / L Library / Frameworks / JavaVM.framework"
Nazariy

2
@Nazariy một số trong số này có thể không yêu cầu sudonhưng tôi chỉ sử dụng nó. Câu chuyện dài: không bao giờ cài đặt lại Java.
Cảm ơn bạn

1
@Nazariy Bảo vệ tính toàn vẹn của hệ thống
Cameron Lowell Palmer

1
AFAIK nó là JDK mặc định được cài đặt bởi Apple. Bạn không cần phải xóa cái này.
Kutsan Kaplan

1
Vui lòng xem lại danh sách tập tin của bạn. Các tệp trong / usr / bin là một phần của hệ thống cơ sở. Xem docs.oracle.com/javase/8/docs/technotes/guides/install/ory
Andres

7

Đây là tài liệu chính thức về việc gỡ cài đặt JDK.

http://docs.oracle.com/javase/8/docs/technotes/guides/install/mac_jdk.html#A1096903


Chỉ cần làm điều này một lần nữa, điều này đã không làm việc. Kết thúc với 'bạn có một phiên bản mới hơn (và liên kết chết của nó).'
Cướp

3
Liên kết này cho biết cd '/Library/Java/JavaVirtualMachines/'sudo rm -rf YOURVERSION.jdkrm -rf jdk1.8.0_06.jdk
Alan Dong

4

Nếu bạn đã cài đặt jdk8 trên máy Mac nhưng bây giờ bạn muốn xóa nó, chỉ cần chạy bên dưới lệnh "sudo rm -rf /L Library / Java / JavaVirtualMachines / jdk1.8.0.jdk"


Sau khi xóa thư mục jdk, một mục nhập cho Java vẫn hiển thị trong Launchpad -> Tùy chọn hệ thống
vẽ

Điều này cũng hiệu quả với tôi .... Cảm ơn rất nhiều, đã giúp sửa lỗi Major.minor phiên bản 52.0 Lỗi trong Android Studio.
Pradeep Chakravarti Gudipati

@ Lấy từ những gì tôi có thể đảm nhận, Java ưu tiên không liên quan gì đến JDK (ví dụ: tùy chọn là trang tải các trang web trên máy của bạn, JDK là về việc biên dịch các chương trình khác bằng Java), do đó, có tùy chọn này thực sự không phải là vấn đề
DaveRGP

3

Nếu bạn gỡ cài đặt tất cả các tệp nhưng vẫn không thành công, hãy sử dụng dòng này:

sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk

2
Điều này không thêm bất cứ điều gì. Câu trả lời được chấp nhận đã nói điều này và hơn thế nữa
Chris Mukherjee

3

Để gỡ cài đặt java của bất kỳ phiên bản nào trên mac, chỉ cần làm:

sudo rm -fr /Library/Java/JavaVirtualMachines/jdk-YOUR_ACCURATE_VERSION.jdk/ 
sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin 
sudo rm -fr /Library/PreferencePanes/JavaControlPanel.prefPane

1

Hai cách bạn có thể làm điều đó:

  1. Xóa JDK trực tiếp khỏi Người dùng-> Thư viện -> Java -> VirtualMachines -> sau đó xóa thư mục jdk trực tiếp để gỡ cài đặt java.

  2. Bằng cách làm theo lệnh: (gỡ cài đặt phiên bản java 1.8)

đảm bảo bạn đang ở trong thư mục chính bằng cách sử dụng lệnh bên dưới, trước khi bạn viết lệnh:

cd ~/

sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.jdk
sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -rf /Library/Application\ Support/Oracle/Java

1

trong Mac Xóa phiên bản Java bằng 3 lệnh này

chuyển đổi java

sudo rm -rf / Thư viện / Java / *

sudo rm -rf / Thư viện / PreferencePanes / Java *

sudo rm -rf / Thư viện / Internet \ Plug-Ins / Java *

Chạy

chuyển đổi java

// Xem java đã được gỡ cài đặt thành công.

java -version sudo rm -rf / Library / Java / * sudo rm -rf / Library / PreferencePanes / Java * sudo rm -rf / Library / Internet \ Plug-Ins / Java *

Chạy java -version

Cài đặt liên kết Java 8

nhập mô tả hình ảnh ở đây

Tải xuống Gói và bấm tiếp theo tiếp theo tiếp theo


JDK 102 MB .PKG được đặt trước
Keshav Gera

-12

Điều này làm việc hoàn hảo cho tôi:

sudo rm -rf /Library/Java/JavaVirtualMachines
sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.