m2eclipse: Eclipse работает в JRE, но требуется JDK - PullRequest
41 голосов
/ 27 мая 2010

У меня проблема с m2eclipse (0.10.0) вместе с eclipse galileo (Build id: 20090920-1017).

Я всегда получаю сообщение об ошибке: «Eclipse работает в JRE, но требуется JDK». Я пробовал несколько вещей, но ничего не работает. Сообщение об ошибке все еще там. Вот что я пробовал:

  • В окне> Настройки> Java> Установленные JRE я проверил JDK1.6.0_20. НЕ РАБОТАЕТ

  • В Окне> Настройки> Java> Установленные JRE Я удалил все JRE. Только проверенный JDK1.6.0_20 все еще там. НЕ РАБОТАЕТ

  • В окне> Настройки> Java> Установленные JRE> Среды выполнения Я выбрал JavaSE-1.6 и проверил JDK1.6.0_20 [идеальное соответствие]. НЕ РАБОТАЕТ.

  • В настройках значка запуска рабочего стола eclipse я добавил параметр -vm (C: \ Program \ eclipse_galileo \ eclipse \ eclipse.exe -vm C: \ Program \ Java \ jdk1.6.0_20 \ bin). НЕ РАБОТАЕТ.

  • Я добавил параметр очистки (C: \ Program \ eclipse_galileo \ eclipse \ eclipse.exe -vm C: \ Program \ Java \ jdk1.6.0_20 \ bin -clean). НЕ РАБОТАЕТ.

  • Я добавил параметр -vm в файл eclipse.ini с возвратом каретки после -vm и C: /Programme/Java/jdk1.6.0_20/bin/javaw.exe в новой строке. НЕ РАБОТАЕТ.

  • После всего этого я удалил плагин m2eclipse и снова установил его. НЕ РАБОТАЕТ.

Новые идеи, которые я попробовал:

  • В настройках значка запуска рабочего стола eclipse я помещаю исполняемый файл в конец (C: \ Program \ eclipse_galileo \ eclipse \ eclipse.exe -vm C: \ Program \ Java \ jdk1.6.0_20 \ bin \ javaw.exe). НЕ РАБОТАЕТ.

  • Я изменил в eclipse.ini косые черты на обратные. НЕ РАБОТАЕТ.

Вот мой файл eclipse.ini:

-startup
plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
-product
org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vm
C:\Programme\Java\jdk1.6.0_20\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m

Есть кто-нибудь, у кого есть другие идеи? Любая помощь приветствуется.

Большое спасибо. GernoK

Ответы [ 15 ]

26 голосов
/ 18 ноября 2010

Невероятно, решение этой проблемы не имеет ничего общего с косой чертой, обратной косой чертой, кавычками, пробелами, jre, jdk, jvm, javaw, ....

Ответ таков: у вас должен быть разрыв строки между

-vm

и путь.

Итак, в файле eclipse.ini:

ЭТО НЕ БУДЕТ РАБОТАТЬ:

-vm C:\java\jdk\bin\javaw.exe

НО ЭТО БУДЕТ:

-vm
C:\java\jdk\bin\javaw.exe
13 голосов
/ 21 декабря 2010

MARIO-ORTEGON ответил правильный ответ на эту проблему. Единственное, что вам нужно сделать, это переместить эту строку «-vm C: \ java \ jdk \ bin \ javaw.exe» в раздел -product org.eclipse.epp.package.jee.product в eclipse.ini. как это: -товар org.eclipse.epp.package.jee.product -vm C: \ Java \ JDK \ Bin \ javaw.exe сохранить и перезапустить затмение. Ошибка исчезнет.

11 голосов
/ 06 сентября 2012

Я думаю, что это ответы, необходимые при редактировании файлов eclipse.ini или STS.ini :

Многие люди делают эти ошибки, потому что они делают определенные предположения (что не правильно):

  1. Ошибка № 1: Запись параметров в одной строке . В отличие от командной строки JVM, Eclipse ожидает, что все параметры будут помещены в разные строки в файле eclipse.ini. Одна из наиболее распространенных ошибок (которая должна быть записана в 2 разделенные строки):

    -vm c: /Java/jdk1.6.0_31/bin/javaw.exe

  2. Ошибка № 2: Запись -vm и -vmargs в неправильном порядке . Последовательность имеет значение. -vmargs необходимо поставить перед -vm . Зачем? Поскольку после указания -vm виртуальная машина будет указана полностью, а остальные параметры -vmargs будут игнорироваться.

  3. Ошибка № 3: Предполагается, что eclipse.ini останется прежним, если вы его не измените . Некоторые плагины могут иметь автоматическую настройку (которая после перезапуска автоматически изменяет файл eclipse.ini или другой файл конфигурации .ini, например STS.ini, если вы используете SpringSource Tool Suite, например), они будут без разбора добавлять - vm перед -vmargs . Проверьте на двойное вхождение -vm или -vmargs .

  4. Ошибка № 4: Указание на путь JVM вместо двоичного файла при указании -vm . Eclipse ожидает двоичный файл Java JVM, а не только путь JAVA_HOME, например, -vm c: /Java/jdk1.6.0_31/bin/javaw.exe не просто -vm c: /Java/jdk1.6.0_31

Для первоначального вопроса, кажется, Ошибка # 2 является причиной. Вместо одного вы должны переместить -vm в конец, после -vmargs :

-startup
plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
-product
org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
-vm
C:\Programme\Java\jdk1.6.0_20\bin\javaw.exe
4 голосов
/ 16 октября 2010

У меня была та же проблема с отчетом Eclipse, что он работал в JRE (Win7 x64, 32-битная версия JDK 1.6, обновление 21), хотя я указывал, что он должен использовать JDK.

Я наконец удалил JRE6 , который можно установить вместе с JDK, и сообщение исчезло.

Кто-то с более глубоким пониманием Windows должен будет объяснить, почему он это делает, но он явно игнорирует настройку eclipse.ini, а также JAVA_HOME и запускает eclipse в JRE.

Мой eclipse.ini:

-vm
C:/Java/jdk1.6.0_21/bin/javaw.exe
-startup
plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
-product
org.eclipse.epp.package.jee.product
-nosplash
org.eclipse.platform
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms32m
-Xmx1024m
-Xss6m
-XX:PermSize=32m
-XX:MaxPermSize=256m
-XX:CompileThreshold=5
-XX:MaxGCPauseMillis=10
-XX:MaxHeapFreeRatio=70
-XX:+UseParallelGC
-XX:+AggressiveOpts
-Dcom.sun.management.jmxremote

JAVA_HOME

C:\Windows\system32>echo %JAVA_HOME%
C:\Java\jdk1.6.0_21
2 голосов
/ 20 декабря 2010

Поместите эти строки в начало файла eclipse.ini:

-vm
G:/dev/jdk1.6.0_19/bin/javaw.exe
2 голосов
/ 27 мая 2010

Я думаю, что вам нужно просто добавить исполняемый файл в аргумент -vm:

C:\Programme\eclipse_galileo\eclipse\eclipse.exe -vm C:\Programme\Java\jdk1.6.0_20\bin\javaw

Что касается INI-файла, это зависит от полного содержимого. Что содержит ваш INI-файл?

1 голос
/ 27 мая 2010

Я получаю то же сообщение об ошибке, как только удаляю эти две строки

-vm
C:\Programme\Java\jdk1.6.0_10\bin\javaw.exe

из моего файла eclipse.ini. Возможно, вам следует использовать обратную косую черту в этом eclipse.ini.

0 голосов
/ 18 июня 2013

Проверьте установленную JRE настройку Eclipse. Это должно указывать на JDK, а не JRE. Хотя это установка JRE. Помните, что JDK содержит JRE, и когда Maven запускается, он пытается найти JDK в основном tools.jar.

0 голосов
/ 17 апреля 2012

У меня тоже была эта проблема. Эта проблема исчезла, когда я обновился до Eclipse Indigo. Так что попробуйте с более высокой версией.

0 голосов
/ 03 февраля 2011

У меня была такая же проблема, но я решил ее. Добавьте параметр -vm в качестве первой строки в файле eclipse.ini, и он будет работать.

...