Eclipse Kepler для OS X Mavericks запрашивает Java SE 6

86

Я только что выполнил чистую установку OS X Mavericksи загрузил Eclipse Kepler, но если я выполню ее, мне будет выдано следующее сообщение:

введите описание изображения здесь

Просят установить Runtime Java SE 6; Я уже установил Java 7, и если я нажму Installв этом диалоговом окне, загрузю и установлю его, а затем снова открою Eclipse, диалоговое окно появится снова.

Как я могу это исправить?

Пьеро
источник
У меня была эта ошибка раньше в предыдущих версиях OSX, вам нужно откатиться до JDK 6, а затем обратно на 7. PITA, я знаю.
MLProgrammer-CiM
2
Если у вас установлена ​​JRE, вы сможете выбрать эту JRE из, Preferences -> Java -> Installed JREsа затем добавить JRE 7 в список установленных JRE - это должно решить проблему, которую я полагаю ... Я думаю, это не сильно поможет, если вы можете вообще не открываю Eclipse - это так?
Darwind
1
@Darwind, я не могу открыть Eclipse ... если я дважды щелкну по значку Eclipse, появится диалоговое окно ...
Пьеро
1
Мне один раз было предложено выбрать один из моих Eclipse RCP (а не другой, который я начал ранее!), Больше он не запрашивался.
greg-449
2
он работает, после установки да я перезагрузил компьютер и теперь работает!
Пьеро

Ответы:

207

Частично это связано с отсутствием в Oracle определений возможностей виртуальной машины JRE8.

Если вы вообще не хотите устанавливать JRE6 и просто используете JRE8 без символической ссылки на JRE6, вы можете сделать следующее:

Скопируйте Info.plist, расположенный по указанному ниже пути, например, в ~ / Downloads /:

/Library/Java/JavaVirtualMachines/jdk.1.8.<…>/Contents/

а затем заменить

<key>JVMCapabilities</key>
 <array>
  <string>CommandLine</string>
 </array>

со следующим:

<key>JVMCapabilities</key>
 <array>
  <string>JNI</string>
  <string>BundledApp</string>
  <string>CommandLine</string>
 </array>

Затем скопируйте файл обратно в исходное место (необходимы права администратора). Чтобы это изменение вступило в силу, вам необходимо выйти из своей учетной записи (и снова войти) или перезагрузить компьютер. Диалог для Java 6 больше не должен появляться, и Eclipse должен нормально запускаться с использованием JRE8 (или JRE7). То же самое верно и для любого другого приложения, которое изначально запрашивает Java, например Adobe Creative Suite.

В связи с этим кажется, что это изменение списка сохраняется даже после обновлений, выполненных через панель настроек Java в системных настройках.

Если все еще не работает. Возможно, вам потребуется добавить несколько папок и символическую ссылку ( подробности ):

sudo mkdir -p /Library/Java/JavaVirtualMachines/jdk1.8.0_*.jdk/Contents/Home/bundle/Libraries
sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_*.jdk/Contents/Home/jre/lib/server/libjvm.dylib /Library/Java/JavaVirtualMachines/jdk1.8.0_*.jdk/Contents/Home/bundle/Libraries/
sudo mkdir -p /System/Library/Java/JavaVirtualMachines/1.6.0.jdk
sudo mkdir -p /System/Library/Java/Support/Deploy.bundle
Николас Гроттендик
источник
После этого у меня появилось сообщение об ошибке «Приложение не открывается, потому что оно от неизвестного разработчика». Следующий вопрос имеет решение: stackoverflow.com/questions/19551298/…
Jonoabroad
6
Могу подтвердить, что перезагрузка абсолютно не нужна. Я только что вышел из системы и снова зашел. Наверное, достаточно перезапустить искатель, даже не выходя из системы, но я не тестировал.
Карло
5
Перезапуск Finder сделал это за меня.
Trevor Dixon
7
Первоначально это дало мне ошибку Eclipse «Не удалось создать виртуальную машину Java», но это было потому, что мой / usr / bin / java был привязан к другому 1.7 (подключаемый модуль / Library / Internet / ... вместо / Библиотека / Java ... один). После исправления этой ссылки у меня все отлично работает - я хотел бы дать два голоса за!
sage
2
Объяснение находится в apple.stackexchange.com/questions/136975/… : «Ошибка возникает из-за того, что JVM не удалось запустить - само приложение Java жестко запрограммировано для загрузки libserver.dylib. Этот файл существует для Java 1.6 и старше, но не для Java 1.7 и выше. Решение состоит в том, чтобы вручную создать символическую ссылку библиотеки (находится в Contents / Home / jre / lib / server / libjvm.dylib) туда, где это ожидается. Уродливый взлом, но он решил мою проблему.
Альберт Годфринд
7

Чтобы иметь возможность запускать Eclipse с Java 7 (Oracle), я запускаю Eclipse, используя этот файл: eclipse / Eclipse.app / Contents / MacOS / eclipse. Папка "eclipse" по умолчанию содержит псевдоним для этого файла. Итак, все, что вам нужно сделать, это дважды щелкнуть псевдоним с именем «eclipse».

Также Oracle предупреждает, что Java Oracle версии 7u25 и ниже отключена Apple в OS X (см. Здесь ). Я обновился до последней версии JDK до того, как узнал, как запустить Eclipse с Java 7. Так что я не знаю, нужно это обновление или нет.

Александр Полещук
источник
7

У меня возникла эта проблема после установки Mavericks. Я смог решить эту проблему, установив Java из загрузки Apple по адресу http://support.apple.com/kb/dl1572

Надеюсь, это поможет.

Боб Ли
источник
7
Это просто переустановка Java 6. OP запросил способ использовать Java 7 по умолчанию.
Ethan Reesor
1

Мне довелось запустить его без процедуры, подобной приведенным выше предложениям. Я стер папку eclipse, а затем скопировал ее обратно из корзины. Пожалуйста, проверьте, работает ли это для вас.

Кори Йонссон
источник
1

В MAC OS X после установки JRE 7 из Oracle с использованием загрузки .dmg при открытии Eclipse он все еще указывал на мою старую JRE 6.

После многочисленных поисков в Google этой проблемы и достижения этой цели в отчаянии я щелкнул «Поиск» в Eclipse -> Настройки -> Установленные JRE и вуаля - он нашел JRE 7.

Тристанберг
источник
1

В моем случае с Eclipse 4.5.1 Mars (устанавливается из установщика OS X, загружается с eclipse.org) и OS X El Capitan :

Грег Дубицки
источник
Просто добавлю к этому ответу - JRE недостаточно. Вам нужно установить JDK, и все в порядке.
Петр Урбан