Подтвердить что ты не робот

Eclipse в OS X использует другую версию Java, чем CLI

Когда я набираю java -version в консоли, я получаю java version "1.8.0_05". Мягкая ссылка /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK указывает на /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents. В окне настроек java единственная версия Java - 1,8. JAVA_HOME имеет значение /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home.

Однако, когда я пытаюсь запустить Eclipse.app, я получаю ошибку: Version 1.6.0_65 of the JVM is not suitable for this product. Version: 1.7 or greater required.

Я считаю, что он пытается использовать /System/Library/Java/JavaVirtualMachines, и в этом каталоге единственная версия 1.6.0.jdk.

Как я могу заставить eclipse использовать правильную версию Java?

4b9b3361

Ответ 1

Загрузите 64-разрядную версию Eclipse вместо 32-разрядной версии.

Причина в том, что Eclipse содержит собственный машинный код (для графического интерфейса), поэтому есть и 32-разрядная, и 64-разрядная версия Eclipse, и это явно требует соответствующей версии Java. Первоначально Apple создавала обе версии до Java 6, но Oracle только создает 64-битную версию (к большому разочарованию владельцев старых машин). Таким образом, если вы загрузите 32-разрядную версию Eclipse, она будет работать только с JVM Apple, которая, по-видимому, слишком старая (что меня удивляет - я думал, что Java 6 все еще поддерживается для Eclipse 4.4)

Ответ 2

Я решил эту проблему в своем mac с yosemite:

  • Установленный JDK для MACOSX 64 бит из https://jdk8.java.net/download.html
  • Внутри eclipse.ini я помещаю эту строку:

    -vm/Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home

И это сработало для меня!

Ответ 3

Я столкнулся с этой же проблемой, но вместо того, чтобы использовать ее в версии 1.8, я изменил настройки в файле eclipse.ini, чтобы я мог просто запускать программу независимо от того, какую версию jvm она хочет использовать

Решение:

Откройте каталог, в котором у вас на компьютере Eclipse.

Вы увидите имя файла eclipse, нажмите клавишу control и click, чтобы просмотреть параметры.

Затем нажмите на Show Original из параметров, там вы найдете файл eclipse.ini, чтобы открыть его с помощью текстового редактора и изменить -Dosgi.requiredJavaVersion=1.7 на -Dosgi.requiredJavaVersion=1.6

Сохраните файл и откройте ecplise.app, который он должен открыть без ошибок

Ответ 4

Попробуйте добавить следующие строки в eclipse.ini:

-vm
/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home

Может быть, может помочь и более новая версия eclipse (если ваша устарела).

Ответ 5

Взгляните на System PreferencesJava. Он должен открыть Java Control Panel. В панели проверьте, есть ли у вас один (или много) JDK.

Я подозреваю, что у вас много, и вы устанавливаете JDK в свой .profile, в то время как Eclipse считывает некоторые другие Java файлы.

Вы можете изменить их вручную, запустив это в своем терминале

export JAVA_HOME=`/usr/libexec/java_home -v 1.8`

Чтобы проверить, работает ли он, запустите java -version, и вы увидите что-то вроде

java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)

Попробуйте вызвать Eclipse сейчас из командной строки. Чтобы вызвать Eclipse как приложение, просто установите Java8 через Java Control Panel. Это будет прочитано при запуске Eclipse.

Это то, что у меня есть на моем Java Control Panel:

enter image description here

Это на моем Eclipse Luna:

enter image description here

Ответ 6

Download the 64-bit version of Eclipse.

Это решило проблему. Спасибо всем.