У меня JAVA_HOME установлен на:
C:\Program Files (x86)\Java\jdk1.6.0_18
После запуска maven install
я получаю от Eclipse сообщение :
Причина:
Unable to locate the Javac Compiler in:
C:\Program Files (x86)\Java\jre6\..\lib\tools.jar
Please ensure you are using JDK 1.4 or above and
not a JRE (the com.sun.tools.javac.Main class is required).
In most cases you can change the location of your Java
installation by setting the JAVA_HOME environment variable.
Я уверен, что это сложная часть
Убедитесь, что вы используете JDK 1.4 или выше, а не JRE
Когда я запускаю конфигурацию, он установлен на JRE6. Как мне изменить его на JDK 1.6, который я уже установил?
Я даже пробовал модифицировать плагин:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<executable>C:\Program Files (x86)\Java\jdk1.6.0_18\bin</executable>
</configuration>
</plugin>
Тем не менее, я получаю ту же ошибку.
Я использую плагин Eclipse Maven. Как я могу перейти с JRE на JDK в Eclipse?
set
чтобы убедиться, что JAVA_HOME установлен на то, что вы думаете?java -version .6.0_18-ea" time Environment (build 1.6.0_18-ea-b04) ) Client VM (build 16.0-b11, mixed mode, sharing)
java -version
выполняется; это может быть установка JRE или JDK.javac -version
было бы немного полезнее. Однако даже тогда, если PATH правильный, а JAVA_HOME неправильный, они все равно будут отображаться так, как вы ожидаете.Ответы:
Вы можете попробовать обновить JDK Eclipse, как показано ниже:
Добавьте и установите JRE в меню Окно → Настройки ... → Java → Установленные JRE :
Если это не так, возможно, скобки и пробелы в пути JAVA_HOME вызывают проблемы. Попробуйте скопировать JDK в другое место и обновить JAVA_HOME.
источник
Для файла eclipse.ini требуется
vm
аргумент, указывающий на ваше местоположение JDK.Отредактируйте
eclipse.ini
файл, чтобы он указывал на ваш дом JDK, примерно так:Это гарантирует, что Eclipse будет работать с JDK, а не с JRE по умолчанию на вашем компьютере.
источник
Вы пытаетесь:
Зайдите
Preferences/Java/Installed JREs
и добавьте один для местоположения"C:\Program Files\Java\jdk1.6.0_27\jre
или что-то в этом роде.Удалите один для
C:\Program Files\Java\jre6
Как видите, путь
C:\Program Files\Java\jre6\..\lib\tools.jar
имеет смысл только в том случае, если первая часть (до / ..) заменена наC:\Program Files\Java\jdk1.6.0_27\jre
.источник
Установка для fork значения true решила проблему для меня.
источник
У меня была точно такая же проблема! Я искал и искал несколько дней, потому что вся болтовня о том, что "поместите -vm c: \ program files \ java \ jdkxxxxx \ bin" в ini ar в качестве аргумента для ярлыка, совершенно не помогли !
(Неужели я расстроен? Поверьте, это преуменьшение! Я просто в ярости, потому что потерял неделю, пытаясь сделать Maven надежным!)
У меня было очень непредсказуемое поведение. Иногда он компилируется, а иногда нет. Если бы я сделал
maven clean
, он не смог бы найти компилятор и потерпел неудачу. Если я затем изменил что-то в пути сборки, он внезапно снова заработал !!Пока я не зашел в меню Окно → Настройки → Java → Установленные JRE . Я добавил новую JRE, используя расположение JDK, а затем удалил JRE. Внезапно Maven заработал стабильно!
Может быть, стоит писать буквы размером 30 или около того в руководстве по Apache?
При всем уважении, это просто возмутительно для сообщества Java! Я не могу представить, сколько дней потеряли все эти люди, пытаясь решить свои проблемы такого рода! Я не могу представить, что это будет финальная версия. Я лично даже не решился бы выпускать такую штуку под названием beta software ...
С уважением в любом случае .... После недели вмешательства я наконец могу начать развиваться. Надеюсь, мой босс не узнает об этом. Мне потребовалось много усилий, чтобы убедить его не переходить на .NET, и я уже сожалею об этом.
источник
У меня такая же проблема при использовании Run as -> Maven install в Eclipse. JAVA_HOME и eclipse.ini были в порядке и указывали на мой последний JDK. Но m2clipse использовал JRE. Использование mvn install вне Eclipse работало нормально!
В моем случае я решил проблему следующим образом:
Я думаю, что Maven не учитывает, какой из них активен ...
источник
На основе компиляции исходных кодов с использованием другого JDK вам нужно будет установить вилку в значение true в вашем файле pom.xml .
источник
Я только что установил Maven 3.0.4, установить
M2_HOME
,M2
иJAVA_HOME
соответственно. Затем я выполнил следующие команды:mvn archetype:generate....
mvn compile
Я получил сообщения не удался , такие как:
maven unable to locate javac compiler
.На моем компьютере по умолчанию JRE установлена в C: \ program files \ java \ jre.1.6 . И у меня есть другой C: \ java \ jdk1.6 и
JAVA_HOME
установлен на этот C: \ java \ jdk1.6 .Я не заметил ничего плохого в моих настройках. После поиска я решил изучить
mvn.bat
, я повторил%JAVA_HOME%
каждый шаг, и он отображался правильно какC:\java\jdk1.6
, но когда я запускаю командуmvn --version
, он отображает домашнюю страницу Java: C: \ program files \ java \ jre1.1.6 .Наконец, я обнаружил, что мне просто нужно установить,
-Djava.home=c:\java\jdk1.6
как в приведенной ниже команде, и теперь все работает нормально:%MAVEN_JAVA_EXE% %MAVEN_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Djava.home=%JAVA_HOME%" "-Dmaven.home=%M2_HOME%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
Примечание: это для
mvn
командной строки, а не для Eclipse.источник
Я решил проблему, изменив местоположение установленной JRE на каталог, присутствующий в самом JDK. Установка правильного значения
JAVA_HOME
переменной окружения не решила проблему.В моем случае есть два каталога
C:\Program Files\Java\jdk1.7.0_03 --> For JDK
C:\Program Files\Java\jre7 --> For JRE
Первоначально я установил
C:\Program Files\Java\jre7
JRE в Eclipse как установленную и получал ту же ошибку в случае Maven (Ant работал нормально).Изменение установленной JRE на
C:\Program Files\Java\jdk1.7.0_03\jre7
установленную JRE в Eclipse решает проблему.источник
Не забывайте, что если вы запускаете свой проект из определенной конфигурации Eclipse, вам следует изменить среду выполнения Java в разделе «Конфигурации запуска» -> «Конфигурация вашего maven» -> «Вкладка JRE» после добавления нужного JDK в ваши предпочтения Eclipse.
источник
Похоже, Maven использует JRE, а не JDK. Возможно, вы установили Maven перед установкой JDK?
Проверьте файлы настроек . Всего их три: система, пользователь и проект. Скорее всего, это конфигурация установки ($ M2_HOME / conf / settings.xml) или, возможно, конфигурация для каждого пользователя ($ {user.dir} /. M2 / settings.xml).
источник
Только настройка Eclipse
Проделайте следующие шаги:
Щелкните правой кнопкой мыши Свойства проекта Eclipse.
Путь сборки Java → Библиотеки
Выберите Системную библиотеку JRE → Нажмите Editкнопку
Нажмите кнопку "Установленные JRE ..."
Отредактируйте JRE как: Установите JRE Home = JAVA_HOME или JAVA_HOME \ jre
Скриншот:
источник
Щелкните правой кнопкой мыши меню Project → Properties → Java Build Path. .
Выберите системный путь JRE → Изменить . Выберите JRE рабочего пространства по умолчанию и укажите его на JDK> 1.4.
источник
Используйте меню Окно → Настройки → Java → Установленные JRE → Среды выполнения -> установите флажок справа.
источник
Решение простое. Иногда Eclipse Windows → Preferences → Java → Installed JRE указывает на
C:\Program files\Java\jre
.Когда я его поменял,
C:\Program files\Java\JDK 6.0\jre
он работает на 100%.источник
Как упоминалось рядом других, Eclipse Window → Preferences ... → Java → Installed JRE должны указывать на установленный вами JDK , а не на JRE. Только тогда он сможет найти
../lib
папку, указанную в сообщении об ошибке.Даже при этом проблема может повториться. Мой выход в Eclipse v4.2 (Juno) - это сделать меню Maven → Обновить проект ... после чего проблема исчезнет.
Я подозреваю, что причина в том, что некоторые из файлов, сгенерированных Eclipse (.classpath, .project, .preferences), находятся в Subversion для проекта, в котором у меня возникли эти проблемы. Таким образом, обновление SVN представляет проблему, а обновление конфигурации от Maven в Eclipse снова решает ее.
Реальное решение: исключить созданные Eclipse файлы .files из системы управления версиями и позволить плагину Maven Eclipse обрабатывать конфигурацию проекта. (Дополнительные указатели / предложения приветствуются) .
источник
В моем случае в меню Eclipse Run → Debug Configurations .
На вкладке JRE выбор JDK вместо JRE решил проблему.
источник
У меня была такая же проблема с Amazon Linux. Оказывается, мне пришлось установить версию JDK для разработчиков:
источник
Перейдите в меню Eclipse Окно → Настройки ... → Java → Установленные JRE должны указывать на установленный вами JDK, а не на JRE.
источник
Вы также можете убедиться, что в Eclipse есть все обновленные изменения. Для этого щелкните свой проект правой кнопкой мыши и выберите пункт меню «Обновить».
источник
Во многих других ответах вам предлагается указать в своем Eclipse JDK вместо JRE.
Вот еще один ответ с более конкретными / ясными [чем я видел в любом ответе здесь] пошаговыми инструкциями о том, как это сделать: Как установить JDK?
Вот почему я решил эту же проблему.
источник
Убедитесь, что "-vm" в вашем eclipse.ini находится на двух строках sperate, то есть:
источник
Я бы предположил, что расположение компилятора определяется в POM для плагина компилятора, который должен находиться в отображаемом местоположении JRE, а не в местоположении JDK, на которое указывает JAVA_HOME.
источник
<groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.0.2</version> <configuration> <source>1.6</source> <target>1.6</target>
Вам нужно указать
JAVA_HOME
вmvn.ini
(он находится в папке Maven/bin
), и ваша проблема исчезнет.источник
Если вы установили JAVA_HOME, а проблема не исчезла, попробуйте следующее.
(У меня была такая же проблема на новом установленном ПК.)
Предполагая, что вы используете Eclipse.
Вот и все. Ваш проект не столкнется с такими проблемами.
источник
У меня была такая же ошибка из-за JUnit версии . У меня было три 3.8.1, а я сменил на 4.8.1.
Итак, решение:
Вам нужно перейти к POM и убедиться, что ваша зависимость выглядит так
источник
Я изменил конфигурацию maven-compiler-plugin, чтобы добавить
executable
иfork
со значением true.У меня это сработало.
источник
Делай
Echo %JAVA_HOME%
и потомmvn --version
.Путь JRE должен быть таким же ... затем перейдите в меню Window → Preferences → Java → Установленное местоположение JRE должно быть таким же, как
Java_Home
показано.источник
Перейдите в диалоговое окно " Свойства" и щелкните проект правой кнопкой мыши.
В связанных ресурсах добавьте новый путь с именем JAVA_HOME и укажите свое местоположение JDK, например «C: \ Program Files \ Java \ jdk1.8.0_73».
Вот и все!!
источник
Решение этой проблемы очень простое ...
Если у вас нет файла сборки Ant, сгенерируйте его. В Eclipse вы можете легко создать файл Ant .
См. Ссылку для создания файла сборки Ant [ http://www.codejava.net/ides/eclipse/how-to-create-ant-build-file-for-existing-java-project-in-eclipse] .
Теперь выполните указанные шаги:
1) Добавьте свой Ant файл сборки в Ant зрения , которая находится в окне просмотра.
2) щелкните правой кнопкой мыши файл сборки Ant и выберите « Запуск от имени». и второй вариант в этой « Ant».
3) Теперь откроется диалоговое окно с различными параметрами и вкладками.
4) Выберите вкладку JRE .
5) Вы увидите три переключателя, и в качестве опции для них будет выбран JRE или JDK.
6) Внимательно посмотрите, выбрана ли JRE для переключателей, затем измените ее на JDK .
7) Нажмите «Применить».
Это оно...!!!
источник