сборка знатока перестала работать: Не мог определить местоположение Компилятора Javac в: jre или проблема jdk

У меня есть свой набор 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 в затмении?

108
задан Ripon Al Wasim 29 April 2015 в 11:43
поделиться

5 ответов

Вы можете попробовать обновить 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.

139
ответ дан 24 November 2019 в 03:31
поделиться

Я предполагаю, что местоположение компилятора определяется в pom, чтобы плагин компилятора находился в отображаемом местоположении jre, а не в местоположении jdk, на которое указывает JAVA_HOME.

0
ответ дан 24 November 2019 в 03:31
поделиться

Похоже, Maven использует JRE, а не JDK. Возможно, вы установили Maven перед установкой JDK?

Проверьте файлы настроек . Всего их 3: система, пользователь и проект. Скорее всего, в конфигурации установки ($ M2_HOME / conf / settings.xml) или, возможно, в конфигурации для каждого пользователя ($ {user.dir} /. M2 / settings.xml).

2
ответ дан 24 November 2019 в 03:31
поделиться

У меня та же проблема при использовании "Запуск от имени" -> установка Maven в Eclipse. JAVA_HOME и eclipse.ini были в порядке и указывали на мой последний JDK. Но m2clipse использовал JRE. Использование mvn install вне Eclipse сработало нормально! В моем случае я решил проблему следующим образом: 1. Перейдите в Eclipse: Окно -> Настройки -> Java -> Установленные JRE 2. Было две неактивных записи для JRE и JDK. Активным был последний установленный JDK. Удалите все записи, кроме одного, который должен использовать maven.

Думаю, maven не принимает во внимание, какой из них активен ...

3
ответ дан 24 November 2019 в 03:31
поделиться

У меня была ТОЧНАЯ такая же проблема! Искал и искал несколько дней, потому что вся болтовня о том, что "поместите -vm c: \ program files \ java \ jdkxxxxx \ bin" в ini ar в качестве аргумента для шорткурта, НЕ ВООБЩЕ heklp! (Неужели я выгляжу разочарованным? Поверьте, это преуменьшение! Я просто в ярости, потому что потерял неделю, пытаясь сделать Maven надежным!)

У меня было очень непредсказуемое поведение. Иногда он компилируется, иногда нет. Если бы я очистил maven, он не смог бы найти компилятор и потерпел неудачу. Если я затем изменил что-то в пути сборки, он внезапно снова заработал !!

Пока я не перешел в окно -> настройки -> java -> установил JRE. Я добавил новую JRE, используя расположение JDK, а затем удалил JRE. Внезапно maven заработал стабильно!

Может быть, стоит писать буквы с размером шрифта 30 или около того в руководстве по apache? При всем уважении, это просто возмутительно для сообщества Java! Я не могу представить, сколько дней потеряли все эти люди, пытаясь решить свои проблемы такого рода! Я не могу себе представить, что это будет окончательная версия. Я лично даже не осмелился бы выпускать такую ​​вещь под названием BETA software ...

С уважением, в любом случае .... После недели вмешательства я наконец могу начать разработку. Надеюсь, мой босс не узнает об этом. Мне потребовалось много усилий, чтобы убедить его НЕ переходить на .NET, и я уже сожалею об этом.

8
ответ дан 24 November 2019 в 03:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: