З завершенням публічних оновлень для Java 1.6 в лютому 2012 року та довгим списком оновлень безпеки на пізніших 1.7, я схильний назавжди видалити Java 1.6 та JDK зі свого Mac, якби я лише знав, як це досягти в чистий спосіб.
З завершенням публічних оновлень для Java 1.6 в лютому 2012 року та довгим списком оновлень безпеки на пізніших 1.7, я схильний назавжди видалити Java 1.6 та JDK зі свого Mac, якби я лише знав, як це досягти в чистий спосіб.
Відповіді:
У Mac OS X 10.7 JDK, наданий Apple (Java 6), встановлений у / System / Library / Java / JavaVirtualMachines /, тому просто видаліть його звідти
JDK, наданий Oracle (Java 7), встановлений у / Бібліотека / Java / JavaVirtualMachines /
/Library/Java/JavaVirtualMachines/
, а не /System/Library/
одна.
У мене було те саме питання і до сьогодні.
З архівів macosx-port-dev та як правильно видалити Java 6 на OSX? :
Я згоден з нижченаведеною оцінкою,
(Попереднє повідомлення)
Я не знаю відповіді на ваше запитання, але можу припустити, що ви можете завдати собі непотрібних проблем.
Оновлення безпеки важливі через веб-сайти, які зловмисно використовують Java. Але ви не можете використовувати Java 6 в Інтернеті все одно. Можна запустити Java 7 лише для аплетів.
Java 6 на вашій машині для застарілого програмного забезпечення, яке покладається на неї в автономних програмах. Проблеми безпеки не торкнуться цих додатків. Проблеми безпеки - це незмінно хитрощі з порушеннями роботи пісочниці, і автономні програми так чи інакше не запускають Java.
однак якщо ви хочете позбутися машини Java SE 6, правильна процедура:
Видаліть "системний" JVM, встановлений і підтримується оновленням програмного забезпечення
% sudo rm -rf /System/Library/Java/JavaVirtualMachines/1.6.0.jdk
Видаліть попередні перегляди Java Developer
% sudo rm -rf /Library/Java/JavaVirtualMachines/1.6.0*.jdk
НЕ видаляйте жодного вмісту з JavaVM.framework (Примітка. Це під
/System/Library/Frameworks/JavaVM.framework
)Ці елементи потрібні Java 7, 8, 9+, а також Java SE 6. Жодна сучасна версія OS X так і не має Java JDK.
Щодо відповіді вище, яка говорить:
НЕ видаляйте жодного вмісту з JavaVM.framework (Примітка. Це під
/System/Library/Frameworks/JavaVM.framework
)
Варто зазначити, що вона /System/Library/Frameworks/JavaVM.framework
містить Versions
папку, принаймні в моєму випадку, що ця Versions
папка містила:
lrwxr-xr-x 10 1.4 -> CurrentJDK
lrwxr-xr-x 10 1.4.2 -> CurrentJDK
lrwxr-xr-x 10 1.5 -> CurrentJDK
lrwxr-xr-x 10 1.5.0 -> CurrentJDK
lrwxr-xr-x 10 1.6 -> CurrentJDK
lrwxr-xr-x 10 1.6.0 -> CurrentJDK
drwxr-xr-x 238 A
lrwxr-xr-x 1 Current -> A
lrwxr-xr-x 59 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents
Не здається корисним залишати CurrentJDK вказівкою на неіснуючу директорію, тому я запустив цю команду в /System/Library/Frameworks/JavaVM.framework/Versions
папку:
sudo ln -sf /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents CurrentJDK
оскільки там встановлено мій новий JDK.
ОНОВЛЕННЯ: Після видалення Java 1.6 зі своєї машини, наступного разу, коли я запустив PhpStorm, він сказав мені, що потрібно завантажити та встановити час виконання Java SE 6. Після цього /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK
посилання було скинуто на /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents
. Отже, здається, що 1.6 JDK (або принаймні частина його JRE) може продовжувати повертатися, залежно від інших додатків, якими ви користуєтесь.
brew install maven
це, перегляне це мертве символьне посилання для CurrentJDK і не вдасться. Здається, посилання на новішу версію працює.
JVMVersion
ключ. Джерело: intellij-support.jetbrains.com/entries/…