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

Конфигурация JVM Eclipse

Фон: у меня есть новая установка затмения и установлен плагин m2eclipse. После запуска m2eclipse генерирует сообщение:

Eclipse работает в JRE, но JDK требуется

Следуя инструкциям здесь Я изменил файл eclipse.ini, чтобы использовать JVM JVM:

-startup
plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.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:\Program Files\Java\jdk1.6.0_16\bin\javaw.exe"

Однако после перезапуска eclipse я все еще получаю сообщение о том, что он работает под JRE, а не JDK.

Просмотр конфигурации eclipse с помощью справки → Об Eclipse → Сведения об установке → Конфигурация кажется, что eclipse собирает детали конфигурации JVM из другого места:

...
-vm
C:\Program Files (x86)\Java\jre6\bin\client\jvm.dll
eclipse.home.location=file:/C:/Program Files (x86)/eclipse/
eclipse.launcher=C:\Program Files (x86)\eclipse\eclipse.exe
[email protected]/../p2/
eclipse.p2.profile=epp.package.jee
eclipse.product=org.eclipse.epp.package.jee.product
eclipse.startTime=1252669330296
eclipse.vm=C:\Program Files (x86)\Java\jre6\bin\client\jvm.dll
eclipse.vmargs=-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
-vm
"C:\Program Files\Java\jdk1.6.0_16\bin\javaw.exe"
-XX:MaxPermSize=256m
...

Мой вопрос в том, где находится первый аргумент -vm и как его можно удалить или изменить?

Спасибо

Обновление. Я обновил файл eclipse.ini в соответствии с ответом VonC. Теперь я получаю сообщение об ошибке при запуске eclipse:

Для запуска Eclipse должна быть доступна Java Runtime Environment (JRE) или Java Development Kit (JDK). Никакая виртуальная машина Java не была найдена после поиска в следующих местах: "C:\Program Files\Java\jdk1.6.0_16\bin\javaw.exe"

Я подтвердил, что путь верен и может быть выполнен через командную строку.

Завершите eclipse.ini ниже:

-startup
plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.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:\Program Files\Java\jdk1.6.0_16\bin\javaw.exe"
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m

Решение: похоже, что что-то не так с файлом eclipse.ini. Я полностью заменил его настройками VonC в записи, которую он связал, и затмение теперь начинает правильно и использует правильную JVM. Полный eclipse.ini ниже для кого-то другого с той же проблемой:

-showlocation
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
384m
-startup
plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
-vm
C:\Program Files (x86)\Java\jdk1.6.0_16\jre\bin\client\jvm.dll
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms128m
-Xmx384m
-Xss4m
-XX:PermSize=128m
-XX:MaxPermSize=128m
-XX:CompileThreshold=5
-XX:MaxGCPauseMillis=10
-XX:MaxHeapFreeRatio=70
-XX:+UseConcMarkSweepGC
-XX:+CMSIncrementalMode
-XX:+CMSIncrementalPacing
-Dcom.sun.management.jmxremote
-Dorg.eclipse.equinox.p2.reconciler.dropins.directory=C:/jv/eclipse/mydropins
4b9b3361

Ответ 2

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

Ответ заключается в том, что у вас должен быть разрыв строки между -vm и контуром.

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

ЭТО НЕ РАБОТАЕТ:

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

НО ЭТО БУДЕТ:

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

Ответ 3

Я думаю, что ваша машина - это 64-битные окна?

Я не вижу 64-битную версию eclipse на сайте. Таким образом, может быть доступно только 32 бит. Вы уверены, что в вашем компьютере установлен 32-битный JDK? Просто мысль...

Ответ 5

Если вы используете Windows, щелкните правой кнопкой мыши по ярлыку eclipse и выберите "Свойства", на вкладке "Ярлык" вы можете изменить то, что в поле "Цель", чтобы указать jdk. Я использую

"C:\Program Files\eclipse-jee-galileo-sr1 (3.5.1)\eclipse.exe" -vm "C:\Program Files\Java\jdk1.6.0_16\bin\javaw.exe" - vmargs -Xmx1024m -XX: PermSize = 256M -XX: MaxPermSize = 512M -XX: + UseConcMarkSweepGC -XX: + CMSIncrementalMode По какой-то причине я не мог заставить его использовать jdk, когда я пытался редактировать файл eclipse.ini.

Как запустить eclipse в JDK?

Ответ 6

Моя проблема заключалась в том, что -vm "C:\Program Files\Java\jdk1.7.0_67\jre\bin\javaw.exe"

путь был в кавычках, когда я удалял кавычки, которые он работал:

-vm C:\Program Files\Java\jdk1.7.0_67\jre\bin\javaw.exe

Ответ 7

Вы должны указать полный путь javaw.exe после аргумента -vm без использования двойных кавычек, т.е. "", каждый из -vm и путь должен быть в разных строках, а -vm должен быть до -vmargs. Например:

-vm
C:\Program Files\Java\jrockit-jre1.6.0_45-R28.2.7\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx512m
-XX:+UnlockDiagnosticVMOptions
-XX:MaxClassBlockMemory=75M

Ответ 8

Я решаю этот вопрос.

Когда вы создаете проект Maven в Eclipse, возможно, кодировка текстового файла в этих свойствах проекта и project.build.sourceEncoding в pom.xml была не такой. Когда вы создадите этот проект, он сообщит об ошибке "Невозможно найти ошибку Javac Compiler in:...".

Например, моя кодировка текстового файла была GBK, а project.build.sourceEncoding - UTF-8, поэтому эта ошибка произошла. Я просто изменил кодировку текстового файла на UTF-8.