Ошибка Eclipse/Maven: "в этой среде компилятор не предоставляется"


Я относительный новичок в мире Java enterprise development. Java-гуру моей организации находится в бессрочном семейном отпуске, и мне было поручено поддерживать некоторые из Java-приложений, которые он разработал. Он установил Eclipse [Kepler SR1] с Maven на моем компьютере, прежде чем он ушел, и он, казалось, работал нормально.

теперь я готов развернуть свою первую модификацию и должен запустить Maven install, но у меня возникли проблемы при получении его на работу - я получаю следующий вывод на консоль:

[ошибка] не удалось выполнить цель орг.апаш.знаток.Плагины:Мейвен-плагин компилятора:3.1:компиляции (по умолчанию-компиляции) проекта mrpapp: составление отказа
[Ошибка] компилятор не предоставляется в этой среде. Возможно, вы работаете на JRE, а не на JDK?

но я определенно am запуск JDK, а не JRE. Я дважды проверил мой $JAVA_HOME (C:Program Files (x86)Javajdk1.7.0_60) и тут есть javac.exe в своем

22 66

22 ответа:

перейдите в окно → настройки → Java → установленные JREs.

и посмотрите, есть ли запись, указывающая на ваш путь JDK, и если нет, нажмите на Edit кнопка и поставить путь, который вы настроили ваш JAVA_HOME окружающая среда.

перейдите в окно > предпочтения > Ява > установленный jres > и проверить установленный jres. У вас должна быть запись с JDK там.

https://cduu.wordpress.com/2013/03/08/maven-eclipse-compiler-error-no-compiler-is-provided-in-this-environment/

Screen_shot добавить '.jar ' для установки JRE.

  1. Eclipse ->window ->preference.
  2. выберите installed JREs ->Edit
  3. Добавить Внешние Банки
  4. выберите tools.jar С .
  5. Нажмите Кнопку Готово

Я пробовал все вещи; тот, который работал для меня:

  1. Правой Кнопкой Мыши на проекте в Eclipse и перейдите к свойствам.
  2. нажмите на путь сборки Java и перейдите на вкладку библиотеки.
  3. проверьте, какая версия Java добавлена там; это JRE или JDK?
  4. Если вы используете проект Maven и хотите построить решение.
  5. выберите JRE добавил их и нажмите кнопку Удалить.
  6. Нажмите кнопку Добавить папку внешнего класса и добавить Установка JDK путем выбора из системы.
  7. Нажмите кнопку "Применить" и "ОК".
  8. Перезапустить Eclipse.
  9. сборка выполнена успешно.

Я также столкнулся с подобной ошибкой, когда я работал с Jdk1.8_92. Для себя я нашел инструменты.jar отсутствовал в моей папке jdk. Поскольку я работал в консоли, я не мог попробовать варианты eclipse, предложенные другими..

Я установил jdk-8u92-windows-x64. После того как я попробовал все варианты, я заметил, что инструменты.jar отсутствовал в папке jdk1.8.0_92/lib. Я скопировал инструменты.jar из моей старой версии java. Затем его удалось скомпилировать.

добавить эту конфигурацию в pom.xml

<project ...>
    ...
    <build>
        ...
        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                    <fork>true</fork>
                    <executable>C:\Program Files\Java\jdk1.7.0_79\bin\javac</executable>
                </configuration>
            </plugin>
        </plugins>
    </build>
    ...
</project>

пожалуйста, проверьте, есть ли у вас следующие записи в элементе вашего pom.xml особенно jdk.версия, потому что переключение на установленную jre не исправило мне аналогичную ошибку.

<properties>
    <jdk.version>1.7</jdk.version>
    <spring.version>4.1.1.RELEASE</spring.version>
    <jstl.version>1.2</jstl.version>
    <junit.version>4.11</junit.version>
</properties>

Если кто-то работает Eclipse в Ubuntu и есть эта проблема, я нашел ответ, выполнив следующие действия:

  1. затмение - > окно - > предпочтения.
  2. выберите установленные JREs - > добавить
  3. выберите standardVM.
  4. JRE home: нажмите [каталог..] кнопка.
  5. выберите java (моя проблема заключалась в том, что мое затмение работало с java8, а моя виртуальная машина была с java7), в моем случае java8 был установлен в usr/local/jvm/java-8-oracle.
  6. нажать кнопку Готово.
  7. затем нажмите установленную стрелку JRES, чтобы увидеть другие параметры.
  8. перейти к среде выполнения.
  9. выберите JavaSE-1.6 слева и справа (совместимый JRE) вы должны выбрать Java, который вы только что установили( в моем случае java-8-oracle). вы должны сделать это шаги с JavaSE1.8.
  10. Нажмите кнопку ОК и перезапустите Eclipse.

Я получал ту же ошибку при попытке выполнить сборку maven в Eclipse в недавно установленной установке Eclipse Neon (для JEE devs) в Windows 10 с установленными JDK 8 и JRE 8.

Я пытался указать инструменты.jar как внешняя библиотека, а также установка jdk как-vm в eclipse. Ни одна из этих вещей не сработала.

выбор JDK в качестве выполнения по умолчанию env, как упоминалось выше, сделал уловка..

  1. Eclipse - > window->preference->java->Installed JREs - >Execution Environments.
  2. Выберите JavaSE-1.8
  3. Проверьте JDK1.8 в "совместимых JREs".

текст над совместимым списком JREs в шаге 3 говорит: "JRE по умолчанию можно указать, проверив его"

Примечание: у меня также есть плагин компилятора maven, явно перечисляющий 1.8 в pom

    <plugin>  
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
            <source>1.8</source>
            <target>1.8</target>
        </configuration>
    </plugin>

когда я бежал mvn compile, Я получал ниже ошибки в консоли:

[INFO] Changes detected - recompiling the module!
[WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. build is platform dependent!
[INFO] Compiling 1087 source files to C:\Code\DevVNextComplete\Development_vNext\Source\JARS\target\classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[INFO] 1 error

[разрешение]

я добавил, переменная JAVA_HOME в моей среде переменных, а затем он работал.

enter image description here

в моем случае, я создал конфигурацию запуска и всякий раз, когда я попытался запустить его, ошибка будет отображаться. После поиска на некоторых веб-сайтах я отредактировал конфигурацию запуска и на вкладке JRE выбрал JRE среды выполнения как "workspace default JRE", который я уже настроил, чтобы указать на мою локальную установку Java JDK (ex. C:\Program файлы (x86)\Java\jdk1.8.0_51). Это решило мою проблему. Возможно, это помогает кому-то там.

установлен JRE В моем случае я решил проблему, удалив дубликаты имен, я сохранил только один с именем: jdk.1.8.0_101

получал ту же проблему, указал java на папку bin в eclipse с помощью: windows > настройки > java > установленные JRE > удалите все существующие JRE и укажите его в папку Java bin (в основном в разделе C:\Program файлы\Java\jdk1. 8.x_xx).

затем запустите Maven install он должен работать.

  1. удалите старую Java (JDK/JRE) из системы( сохраните одну (последнюю) версию java), а также удалите все старые записи java jre/jdk в переменных среды PATH/CLASSPATH
  2. затмение->окно->предпочтения->установленный jres->добавить/редактировать JDK от последней установки
  3. Eclipse - > Window - > Preferences - >Installed JREs - >Execution Environment - > выберите нужную версию java слева и установите флажок справа
  4. если вы используете maven включите следующий тег в ПОМ.xml (обновление версий по мере необходимости) внутри тега плагинов.

    <plugin>  
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    
  5. щелкните правой кнопкой мыши на eclipse project Maven - > обновить проект

для меня (на windows 10), я получал сообщение об ошибке "компилятор не предоставляется в этой среде" в командной строке Windows, когда я побежал mvn install. Исправление меняло переменной JAVA_HOME переменная окружения, указывающая на мой jdk (C:\Program Files\Java\jdk1.8.0_101); ранее он указывал на jre.

и чтобы заставить Eclipse использовать новый jdk, я отредактировал eclipse.ini в моем распределении eclipse и изменил строку на -vm до C:\Program Files\Java\jdk1.8.0_101\bin.

проверьте версию java в pom.версия xml и jre в Eclipse->Window->Preferences - >Installed JREs. В моем случае пом.xml имеет другую версию (она имела 1.8, а eclipse-1.7). Исправление версии в pom.xml до 1.7 работал.

Если вы работаете за пределами eclipse в командном окне
убедитесь, что у вас есть правильный JAVA_HOME и что этот каталог содержит компилятор, введя следующую команду в командном окне:

dir %JAVA_HOME%\bin\javac.*

1.Перейдите в Windows-- > настройки-- > Java-->установленные JREs-->среды выполнения

2.выберите версию java, которую вы используете в настоящее время в поле" среды выполнения". Так что в поле " совместимый JREs "вы можете видеть как"jre1.8.0_102[идеальный матч]"(если ваша версия java 1.8). Затем попробуйте построить с помощью maven.

Maven требует JDK для компиляции. В Eclipse вам нужно изменить / заменить JRE на путь JDK, на который указывает ваш JAVA_HOME. Перейдите в окно > предпочтения > Ява > установленный jres.

убедитесь, что Maven-компилятор-плагин в вас pom.xml имеет источник и цель версии java в вашем JAVA_HOME

http://learn-automation.com/maven-no-compiler-is-provided-in-this-environment-selenium/

чтобы проверить, что использует Maven, откройте командную строку и введите:

mvn –version

убедитесь, что JAVA_HOME относится к дому JDK, а не к JRE

На Windows:

перейдите в Свойства системы - > дополнительные настройки системы - > Дополнительно - > переменная окружения и в разделе системные переменные выберите переменную JAVA_HOME и нажмите кнопку Изменить Заполните форму следующим образом Имя переменной: JAVA_HOME Значение переменной:

на Unix:

export JAVA_HOME=<ABSOLUTE_PATH_TO_JDK>

посмотреть этой ссылке

убедитесь, что у вас есть %JAVA_HOME% установить путем ввода echo %JAVA_HOME% в командной строке. Если у вас нет этого набора, вам нужно добавить свой путь Java к переменным среды Window.

следовать : Windows -->предпочтения --> Java - - ->установленJREs

SampleImage

нажмите на "Поиск.."

перейдите на диск C - - - > Program files

Образец Изображения 2

Eclipse найдет все jre и jdk - > выберите один из jdk и выберите применить