Я использую Java SE 7 для программирования простых игр для Windows и Mac, но мне нужно переключиться на Java 6, чтобы запускать такие игры, как Minecraft, на моем компьютере. Раньше все работало нормально, пока я не обновил Mac OS X 10.8.2 Build 12C60.
До этого обновления я имел обыкновение открывать настройки Java и отмечать Java 6 или Java 7. Но сейчас мне кажется, что я не могу найти настройки Java.
Я использую OS X 10.8.2 (последняя версия).
macos
osx-mountain-lion
java
Никита Джершоу
источник
источник
Ответы:
Я не думаю, что можно переключать JRE (среды выполнения), смотрите здесь:
http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jre.html
в котором говорится:
Временное решение:
У меня была похожая проблема, как у вас с Minecraft с Wuala. Там, где мне нужно было запускать Wuala с использованием Java 1.6, а мне нужно было разрабатывать с JDK 1.7, и я справился с этим, открыв пакет Wuala.app и изменив его скрипт запуска:
из:
чтобы:
Т.е. просто заменить:
exec
с:/usr/libexec/java_home -v 1.6.0 --exec
Это, конечно, довольно сложно и будет нарушаться каждый раз при автообновлении wuala, но в остальном это работает.
Чтобы использовать другой JDK, смотрите здесь:
http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jdk.html
в котором говорится:
Вот иллюстрация и примеры из моей установки:
Oracle JDK устанавливает:
Apple поставила JDK:
Это работает для меня также использовать Apple JDK 1.6
Выберите между 1.7 версиями Oracle:
Выбор первого Oracle JDK 1.7.0_04
Выбор JDK 1.7.0_07
JDK по умолчанию является самым высоким:
По умолчанию используется самый высокий уровень патча при использовании только младшего номера версии:
источник
Можно использовать
java_home
механизм более удобно.Скажем, у вас есть Java 7 по умолчанию:
Теперь давайте активируем Java 6:
И вот оно:
Я добавил их в свой
.bashrc
, чтобы сделать вещи еще удобнее:java_ls
уменьшает выводjava_home -V
только до номеров версий. Иjava_use
это просто ярлык для того, что мы сделали выше. Напримерjava_use 1.6
, переключится на Java 6.источник
echo $PATH | awk -v RS=: -v ORS=: '/Library\/Java\/JavaVirtualMachines/ {next} {print}'| sed 's/:$//'
export PATH = $ JAVA_HOME / bin: $ PATH java -version}Решение для простого переключения JDK (не уверен насчет JRE) ( источник ):
(добавьте вышеуказанную функцию к вашему
.bash_profile
)Использование:
источник
Быстрый обходной путь - создать символическую ссылку на старый двоичный файл Java 6:
Затем запустите приложения с помощью: java6 -jar myapp.jar
источник
Приложение настроек Java, похоже, больше не содержит список Java 1.6. Однако, когда я проверяю версию Java в командной строке, я получаю:
источник
Довольно просто переключать версии Java в OS X без необходимости изменения переменной $ JAVA_HOME.
Я использую 10.8.2, и моя переменная $ JAVA_HOME указывает на / Library / Java / Home
Этот путь является символической ссылкой, что можно увидеть, выполнив команду ls -l
Символическая ссылка по умолчанию указывает на
Чтобы перенаправить Java к моей версии 1.7, я просто заменяю старую символическую ссылку Home новой символической ссылкой, указывающей на домашний каталог моей установки Java 1.7.
И вуаля! Java-версия показывает, что я сейчас использую Java 1.7. Просто переключите, какая символическая ссылка в настоящее время называется «Домой», чтобы мгновенно изменить стандартную версию Java JRE.
источник
Вот простой способ переключить Java 6 и Java 7 на Mac OSX.
Шаг 1: загрузите jdk 7 с официального сайта oracle http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html и установите его, шаг за шагом следуя советам.
шаг 2: установите $ JAVA_HOME в .bash_profile
шаг 3: если вы хотите использовать jdk 6, просто альтернативный путь $ JAVA_HOME - jdk 6 home
источник
Управление вашей Java-средой (на Mac и Linux): http://www.jenv.be/
Аналогично RVM для Ruby и N для Node, но для Java.
источник
Исходя из вышеизложенного и нескольких других исследований, я разработал сценарий, который вы можете «поставить» (или «поставить точку») в свой профиль. Он предложит вам меню доступных JAVA_HOME на вашем Mac, хотя вы также можете указать домашнюю страницу по умолчанию или предварительно выбрать пункт меню.
По моему
.bash_profile
:Обратите внимание, что требуется переменная
PREJAVA_PATH
. Вы также можете вызвать его из командной строки:Или предварительно выбрать второй вариант:
Файл
gojava
:источник
Версия @alex для рыбной оболочки (добавьте
~/config/fish/config.fish
):источник