Как я могу изменить Java VM по умолчанию Mac OS, возвращенную из / usr / libexec / java_home
(WASN»Не уверен, что это должно идти на SU ... миграция, безусловно, вариант, но больше программистов читают вопросы здесь, так что здесь идет).
Я использую Mac OS X 10.8.4, и у меня есть Apple 's JDK 1.6.0_51 установлен, а также Oracle 'с JDK 1.7.0_25. Я недавно установил Oracle 's 1.8 Предварительный просмотр JDK для некоторой предварительной версии программного обеспечения, которая требует этого. Теперь, когда я запускаю / usr / libexec / java_home, я получаю это:
$ /usr/libexec/java_home -V
Matching Java Virtual Machines (4):
1.8.0, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home
1.7.0_25, x86_64: "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home
1.6.0_51-b11-457, x86_64: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
1.6.0_51-b11-457, i386: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Отлично.
Однако работает:
$ java -version
Возвращает:
java version "1.8.0-ea"
Это означает, что версия Java по умолчанию в настоящее время является предварительной версией, что нарушает некоторые "нормальный" пакеты (в моем случае VisualVM).
Я могу'установитьJAVA_HOME
потому что запуск приложений игнорирует переменные среды, даже при запуске из командной строки (например,$ open /Applications/VisualVM.app
).
Итак, есть ли файл, который я могу отредактировать, где я могу установить свои предпочтения упорядочивания JVMво всем мире?
(Пожалуйста, не'Скажите мне, чтобы я запустил панель настроек Java, потому что она просто не работает: она не содержит ничего полезного и содержит только одну из 4 установленных мной JVM.)
Обновить:
Oracle JVM живут в/Library/Java/JavaVirtualMachines
, Переименование каталога JDK 1.8 вjdk1.8.0.jvm.xyz
ничего не меняетjava_home
по-прежнему находит его в нужном месте, а выполнение / usr / bin / java все еще выполняет 1.8 JVM. Это не проблема с ссылками и т. Д.
Ответы на похожие вопросы
В то время какэтот ответ предлагает то, что равносильно взлому, который удалит версии Java из списка java_home, но все еще не отвечает на этот вопроскак java_home выбирает его по умолчанию и могут ли пользователинеразрушающе установить его.