m2eclipse не может найти C: \ Program Files \ Java \ jre6 \ .. \ lib \ tools.jar

У меня проблема с использованием jdk / jre моего eclipse. Я знаю, что этот вопрос здесь задавали и на него много раз отвечали, и я довольно долго исследовал, что могло быть не так. На самом деле я ничего не нашел, поэтому спрошу еще раз. Может что-то упускаю (если да, то надеюсь не смущает :)

Моя проблема в том, что когда я запускаю mvn clean install, я получаю сообщение об ошибке, в котором говорится, что плагин m2eclipse "не может найти компилятор Javac в: C: \ Program Files \ Java \ jre6 .. \ lib \ tools.jar" ".

Первым делом я проверил, правильно ли настроена JRE в eclipse. Поэтому я переключился в Window> Preferences> Java> Installed JREs и проверил, является ли выбранный jre jre внутри моей папки jdk. Так и было.

Я проверил eclipse.ini и добавил к нему флаг -vw. Теперь это выглядит так:

-startup
plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.100.v20110502
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
 org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vm
"%JAVA_HOME%\bin\javaw.exe"
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx384m

% JAVA_HOME% разрешается в C: \ Program Files \ Java \ jdk1.6.0_24. Поскольку он содержит пробел, я заключил путь vw в кавычки. Чтобы проверить, действительно ли путь правильный, я попробовал

C:\Windows\System32>echo %JAVA_HOME%
C:\Program Files\Java\jdk1.6.0_24

что говорит мне, что это правильно. Я также пытался передать параметр -vw при запуске eclipse. Итак, команда на запуск затмения была тогда

D:\Programs\eclipse\eclipse.exe -vm "%JAVA_HOME%\bin\javaw.exe"

Я также проверил, есть ли разница, когда я использую нотацию% JAVA_HOME% или если я написал полный путь (это не имеет значения).

Конфигурация eclipse, которую я получаю, когда захожу в Help> About Eclipse> Installation Details> Configuration, выглядит так:

__wbp.gwt.useWebKit=true
awt.toolkit=sun.awt.windows.WToolkit
veclipse.application=org.eclipse.ui.ide.workbench
eclipse.buildId=M20120208-0800
eclipse.commands=-os
win32
-ws
win32
-arch
x86_64
-showsplash
-launcher
D:\Programs\eclipse\eclipse.exe
-name
Eclipse
--launcher.library
D:\Programs\eclipse\\plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.100.v20110    502\eclipse_1406.dll
-startup
D:\Programs\eclipse\\plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher.overrideVmargs
-exitdata
3e30_64
-product
org.eclipse.epp.package.java.product
-vm
C:\Program Files\Java\jdk1.6.0_24\bin\javaw.exe
eclipse.home.location=file:/D:/Programs/eclipse/
eclipse.launcher=D:\Programs\eclipse\eclipse.exe
eclipse.launcher.name=Eclipse
[email protected]/../p2/
eclipse.p2.profile=epp.package.java
eclipse.product=org.eclipse.epp.package.java.product
eclipse.startTime=1335643108722
eclipse.vm=C:\Program Files\Java\jdk1.6.0_24\bin\javaw.exe
eclipse.vmargs=-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx384m
-XX:MaxPermSize=256m
[...]

Я также пробовал использовать javaw.exe, который находится в% JAVA_HOME% \ jre \ bin \, который тоже ничего не меняет.

Одна вещь, которая немного странная, заключается в том, что если я удалю ссылку на jre, ту, которая не включена в jdk, в Window> Preferences> Java> Installed JREs я получаю сообщение об ошибке, которое говорит: "Указанная установка JRE делает не существует".

У кого-нибудь есть идеи, что я делаю не так? Думаю, я пробовал все, чтобы это работало, и, судя по другим статьям, я все делаю правильно.

Кстати: я сделал несколько Maven «Обновить зависимости проекта» и «Обновить зависимости», которые работают, поэтому у меня не было никаких ошибок. Единственное, чего я не сделал, так это перезагрузить компьютер ...


person mvieghofer    schedule 28.04.2012    source источник
comment
Это распространенная ошибка, которая обычно возникает из-за того, что не указывается JDK. Вы вроде все сделали правильно. Вы перезапустили затмение?   -  person peter.murray.rust    schedule 29.04.2012
comment
Да, я перезапускал eclipse несколько раз, что ничего не меняет ...   -  person mvieghofer    schedule 29.04.2012
comment
Возможно, вам стоит увидеть это stackoverflow.com/questions/2222560/   -  person ben_joseph    schedule 04.06.2014


Ответы (7)


  1. Перейдите в Windows -> Установленные JRE.
  2. выберите установленную JRE и нажмите редактировать
  3. измените домашний каталог JRE на PATH_TO_YOURJDK \ jre (ранее это было бы PATH_TO_YOUJRE)
  4. это работает для меня
person m.ali.khan.5049    schedule 02.12.2013

Я нашел обходной путь, который, кажется, работает. Это не совсем то, что я надеялся стать решением, но, по крайней мере, теперь я могу использовать maven.

Я создал новую папку на том же уровне в файловой системе, что и папки jdk и jre. Я назвал его lib и скопировал в него файл tools.jar из jdk.

Вдобавок я переключился с «обычного» затмения для java SE на затмение для Java EE (я использую EJB). Версия eclipse - это та, которую мы получили из университета, поэтому я не знаю, установлен ли плагин, который я пропустил для установки на моем (java SE) eclipse.

Кажется, теперь это работает, но если у кого-то есть решение, которое могло бы решить эту проблему более элегантным способом, пожалуйста, дайте мне знать.

person mvieghofer    schedule 29.04.2012

См. этот ответ. Он предполагает, что вам нужно установить PATH так, чтобы он указывал на каталог bin Java. В моем случае это установлено:

D:\workspace>echo %PATH%
C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Windows\system32;
C:\Windows;C:\Windows\System32\Wbem; ...
C:\Program Files\Java\jdk1.7.0_02\bin; ...
person peter.murray.rust    schedule 29.04.2012
comment
На моем пути был jdk, так что проблема не в этом. - person mvieghofer; 29.04.2012

РЕДАКТИРОВАТЬ: вы упомянули, что в вашем JDK есть ссылка на JRE в вашем пути сборки. Вы заметили, что tools.jar НЕТ в этой папке JRE? tools.jar находится только в папке / lib. Не JRE внутри JDK.

Это постоянно всплывало у меня в моем проекте. По какой-то причине Eclipse продолжает говорить мне, что не может найти tools.jar. Я исправил это несколько раз для этого проекта, и сегодня вечером он вернулся. Ниже я расскажу, как я это исправил раз и навсегда.

Причина в том, что у вас есть JRE6 в ваших включенных библиотеках в вашем пути сборки Java. Однако tools.jar не включен ни в одну JRE, вам необходимо импортировать tools.jar из JDK.

Просто перейдя в Свойства для -> Путь сборки Java -> Библиотеки (вкладка) -> Добавить внешние JAR ... и выбрав файл JDKs tools.jar в папке / lib, это решит проблему. См. Изображение ниже.

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

person tango whiskey double    schedule 08.01.2014

Я заметил, что это уже старый вопрос, но для него есть лучшее решение. Прежде всего, Eclipse запрашивает «Установленные JRE», но на самом деле вы должны предоставить JDK здесь. Подобно упомянутому Стайлеру, но вместо того, чтобы отдельно импортировать tools.jar, просто определите JDK в «Установленных JRE». Затем он найдет все необходимое из «базовой java» без дополнительного импорта для создания пути (также вы не должны перемещать что-либо в папку JDK или из нее, это может нарушить переносимость программного обеспечения). Также обратите внимание, что при выборе «Проект»> «Компилятор Java» есть опция: «Включить настройки для конкретного проекта». Если у вас выбран этот параметр, для него может быть указана другая «JRE», отличная от той, что у вас в «Окно»> «Настройки»> «Java»> «Установленные JRE», выбранные по умолчанию.

person Ville Myrskyneva    schedule 28.04.2014
comment
Я случайно заметил, что m.ali.khan.5049 ранее предоставлял примерно такую ​​же информацию. Я просто упустил это на момент написания. Но я надеюсь, что предоставленная дополнительная информация может кому-то помочь. - person Ville Myrskyneva; 27.05.2014

Проблема в определении вашего JAVA_HOME

C:\Windows\System32>echo %JAVA_HOME%
C:\Program Files\Java\jdk1.6.0_24

Когда это должно быть

C:\Windows\System32>echo %JAVA_HOME%
C:\Program Files\Java\jdk1.6.0_24\jre

Переменная JAVA_HOME должна указывать на каталог Java Runtime.

person Damian Leszczyński - Vash    schedule 17.06.2014

Ниже приведен список шагов, которые помогли мне решить проблему.

ШАГ 1: «Свойства» (окно):

Щелкните правой кнопкой мыши свой проект-> Свойства-> Путь сборки Java-> Системная библиотека JRE (выберите) -> Изменить.

ШАГ 2. «Системная библиотека JRE» (окно):

Альтернативный JRE (выберите и выберите JRE) -> Установленные JRE (щелкните).

ШАГ 3. «Настройки (отфильтрованные)» (окно)

Выберите JRE в разделе «Установленные JRE» -> «Изменить» (щелкните)

ШАГ 4. «Редактировать JRE» (окно)

Нажмите "Добавить внешние JAR".

ШАГ 5: «Выбор JAR» (окно)

Выберите tools.jar (в JDK-> lib) -> «Открыть» -> «Готово» -> «ОК» -> «Готово» -> «ОК».

Мы в порядке !!! Надеюсь это поможет..

person user4693006    schedule 20.03.2015