Ответ 1
Кажется, что JDK оракула можно просто удалить. Для eclipse я мог бы добавить установку A в качестве JRE по умолчанию из Java Build Path → JRE System Library → Installed JRES → Добавить...
Я загрузил JDK для Mac OS X 10.9.1 из Oracle, но мне пришлось снова установить еще одну Java с сайта Apple, так как Я не мог запустить затмение с ним.
Это две страницы, которые я упоминал.
Теперь у меня на компьютере установлено три java файла.
/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode)
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/bin/java
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
Я обнаружил, что я легко могу удалить установку C, однако я не уверен, что это нормально.
Когда я вызываю java из командной строки, он указывает на установку A.
java -version
java version "1.7.0_51"
ls -alF `which java`
lrwxr-xr-x 1 root wheel 74 Jan 15 09:12 /usr/bin/[email protected] -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
После некоторой настройки и тестирования у меня установлен только один Java (1.6). У меня есть установка B, и теперь установка C связана с установкой A.
Для использования eclipse мне пришлось сделать уровень совместимости компилятора до 1.6, чтобы использовать его (с помощью java.lang.UnsupportedClassVersionError Unsupported major.minor version 51.0).
Это похоже на то, что произошло.
Установка Apple Java
Установка Oracle Java
/System/Library/Frameworks/JavaVM.framework/Versions/A
Я попытался установить Oracle Java только, удалив Apple Java, но у меня возникла ошибка установки, поэтому я предполагаю, что Apple Java требуется для установки Oracle Java.
Кажется, что JDK оракула можно просто удалить. Для eclipse я мог бы добавить установку A в качестве JRE по умолчанию из Java Build Path → JRE System Library → Installed JRES → Добавить...
Вы можете указать версию JDK для использования с Eclipse в eclipse.ini
. Это устранит проблему с запуском Eclipse.
-vm
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/bin/java
Предупреждение. Добавьте эту конфигурацию до -vmargs
.
Гораздо проще поддерживать несколько версий JDK с jenv.
jenv для эквивалента rbenv, но для среды Java. Это позволяет легко переключаться между несколькими установками JDK (уже присутствует) и настраивать, какой из них использовать для каждого проекта.