У меня есть свой набор JAVA_HOME к
C:\Program Files (x86)\Java\jdk1.6.0_18
После того, как я выполню установку знатока, я получаю это сообщение от затмения:
Причина:
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>
Тем не менее я получаю ту же ошибку
Возможно, я забыл говорить, что я использую плагин знатока затмения.. как я могу измениться от JRE до JDK в затмении?
Вы можете попробовать обновить JDK, который использует Eclipse, следующим образом:
Добавьте и установите JRE в Window-> Preferences ...-> Java-> Installed JREs:
JRE type: Standard VM JRE
Name: jdk1.6.0_18
JRE home directory: C:\Program Files (x86)\Java\jdk1.6.0_18
Если это не так, возможно, что квадратные скобки и пробелы в пути JAVA_HOME вызывают проблемы. Попробуйте скопировать JDK в другое место и обновить JAVA_HOME.
Я предполагаю, что местоположение компилятора определяется в pom, чтобы плагин компилятора находился в отображаемом местоположении jre, а не в местоположении jdk, на которое указывает JAVA_HOME.
Похоже, Maven использует JRE, а не JDK. Возможно, вы установили Maven перед установкой JDK?
Проверьте файлы настроек . Всего их 3: система, пользователь и проект. Скорее всего, в конфигурации установки ($ M2_HOME / conf / settings.xml) или, возможно, в конфигурации для каждого пользователя ($ {user.dir} /. M2 / settings.xml).
У меня та же проблема при использовании "Запуск от имени" -> установка Maven в Eclipse. JAVA_HOME и eclipse.ini были в порядке и указывали на мой последний JDK. Но m2clipse использовал JRE. Использование mvn install вне Eclipse сработало нормально! В моем случае я решил проблему следующим образом: 1. Перейдите в Eclipse: Окно -> Настройки -> Java -> Установленные JRE 2. Было две неактивных записи для JRE и JDK. Активным был последний установленный JDK. Удалите все записи, кроме одного, который должен использовать maven.
Думаю, maven не принимает во внимание, какой из них активен ...
У меня была ТОЧНАЯ такая же проблема! Искал и искал несколько дней, потому что вся болтовня о том, что "поместите -vm c: \ program files \ java \ jdkxxxxx \ bin" в ini ar в качестве аргумента для шорткурта, НЕ ВООБЩЕ heklp! (Неужели я выгляжу разочарованным? Поверьте, это преуменьшение! Я просто в ярости, потому что потерял неделю, пытаясь сделать Maven надежным!)
У меня было очень непредсказуемое поведение. Иногда он компилируется, иногда нет. Если бы я очистил maven, он не смог бы найти компилятор и потерпел неудачу. Если я затем изменил что-то в пути сборки, он внезапно снова заработал !!
Пока я не перешел в окно -> настройки -> java -> установил JRE. Я добавил новую JRE, используя расположение JDK, а затем удалил JRE. Внезапно maven заработал стабильно!
Может быть, стоит писать буквы с размером шрифта 30 или около того в руководстве по apache? При всем уважении, это просто возмутительно для сообщества Java! Я не могу представить, сколько дней потеряли все эти люди, пытаясь решить свои проблемы такого рода! Я не могу себе представить, что это будет окончательная версия. Я лично даже не осмелился бы выпускать такую вещь под названием BETA software ...
С уважением, в любом случае .... После недели вмешательства я наконец могу начать разработку. Надеюсь, мой босс не узнает об этом. Мне потребовалось много усилий, чтобы убедить его НЕ переходить на .NET, и я уже сожалею об этом.