Идея: когда javac: источник выпуск 1.7 требует целевого выпуска 1.7

При выполнении теста JUnit, используя IntelliJ идея, я вам

Как я могу исправить это?

  • С помощью пакета SDK 1.7
  • Уровень языковой модуль составляет 1,7

Сборка работает отлично. (Что's, почему я считаю, что это проблема конфигурации идею)

Решение

Скорее всего у вас неправильные параметры компилятора, импортируемые из Мэйвен здесь:

Также проверить проект и байт-код модуля (цель) настройки версию изложил на скриншоте.

Другие места, где источник уровень языка настроен:

  • Структура Проекта Проект

  • Структура проекта | модулей (проверить каждый модуль) | источники

Мэйвен язык по умолчанию уровень является 1.5 (5.0), вы увидите данную версию в качестве модуля языкового уровня на скриншоте выше.

Это может быть изменено с помощью maven-compiler-plugin конфигурация внутри pom.xml`:


  [...]

    [...]


        org.apache.maven.plugins
        maven-compiler-plugin

          1.8
          1.8



    [...]

  [...]

или


  [...]

    1.8
    1.8

  [...]

Идея IntelliJ будет уважать этот параметр после того, как вы реимпорт Maven-проекта в [проекты Maven] окно инструментов(https://www.jetbrains.com/help/idea/2016.3/maven-projects-tool-window.html):

Комментарии (12)

IntelliJ 15, 2016 & 2017

Аналогично обсуждаются ниже для IntelliJ 13 & 14, но с дополнительный уровень в Параметры/предпочтения группы: параметры > создание, оформление, развертывание > компилятор > компилятора Java,.

IntelliJ 13 & 14

В IntelliJ 13 и 14, проверьте Settings > компилятор > интерфейс Ява Compiler, чтобы убедиться, что вы'повторно не предназначенные для различных байт-код версии в модуле.

Комментарии (6)

В IntelliJ идея 14.1 в "Цель байт-код версии" это в другом месте.

Следующие изменения работал для меня:

Файл > Настройки и GT; сборки, выполнения, развертывания > компилятор > компилятора Java, изменить цель байт-код версии от 1,5 до 1,8

Комментарии (2)

Вы смотрели конфигурации следует так, если вы используете Maven 3 и JDK 7


    SpringApp


            maven-compiler-plugin

                1.7
                1.7


        ...

    ...
Комментарии (0)

Я столкнулся с этим и все было подстроено, чтобы перейти к настройкам проекта > модули > выберите модуль > вкладку зависимости. Я заметил, что модуль SDK был еще 1.6, я поменял на 1.7 и все работало.

Комментарии (1)

Я'вэ нашел необходимые параметры ('цели байт-код версии') в Настройки > компилятор > компилятор Java в моем случае (intelij идея 12.1.3)

Комментарии (0)

Изменить компилятор файл настроек проекта в следующий путь и изменить 'мишень' до 1,7:

/project/.idea/compiler.xml



Комментарии (1)

Я решил это путем установки поле пустым:

Настройки > компилятор > компилятора Java > проект байт-код версии

Чем IntelliJ использует версию JDK по умолчанию.

Комментарии (0)

Я'вэ нажмите этого после просто незначительное обновление от IntelliJ идея 14 до в14.1. Для меня изменение изменение верхнего/родитель пом помогли, а потом нажал повторно импортировать Мэйвен (если это не автомат).

Но это может быть просто достаточно кликнуть правой кнопкой мыши на модуле(модулях)/агрегатируется/родительского модуля и Maven -> реимпорт.

Комментарии (1)

От одного момента к другому, я также получил эту ошибку без ясной причины. Я менял всевозможные настройки компилятора/модуль и т. д. Но в конце концов я просто воссоздал проект IntelliJ путем импортировать Maven-проекта, и проблема была решена. Я думаю, это ошибка.

IntelliJ 12 129.961

Комментарии (1)

Я решил способ ржали

Файл >> По структуре проекта >> Проект >> проект языковой уровень --> установить нужную версию (например, 1.5)

Комментарии (0)

Если сборка нормально работает, попробуйте синхронизировать структуру проектов Maven и IntelliJ идея.

В окно средство Мэйвен Нажмите кнопку Обновить . При нажатии на эту кнопку, идея IntelliJ анализирует структуру проекта в окне инструмента Мэйвен.

Обратите внимание, что это может не помочь, если вы're с помощью построения ВП, поскольку функция синхронизации Мэйвен может быть нарушена иногда.

Комментарии (0)

Если это проект Gradle, а в вашей сборке.файл Gradle, ищите следующие параметры:

sourceCompatibility = "xx"
targetCompatibility = "xx"

Для всех subrpojects, в корень сборки.файл Gradle, вы можете положить:

subprojects { project ->
    sourceCompatibility = "1.7"
    targetCompatibility = "1.7"
}

Хотя вы можете вручную настроить уровни языка в идею и gt; Настройки, если это проект Gradle, а идея автоматически синхронизирует модуль .ИМЛ файлы настройки Gradle в ( проверено с идеей 15+). Так что все ваши ручные изменения будут переопределены, когда Gradle в обновлении.

На основе Gradle в документации, если они не установлены, то текущая конфигурация виртуальной машины JVM используется.

Комментарии (0)

Я нашел другой способ нарваться на эту ошибку. Вы можете сделать это, если вы повторно организовать вашу структуру каталогов, и один из ваших англичане указывает на старый родитель, который не настраивает и javac (потому что конфигурация была перенесена на среднем уровне). Если это произойдет сверху по умолчанию уровня до 1,5 и провинившихся нижних пом уровне наследует его.

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

Комментарии (0)

проверить .idea/misc.xml иногда вам нужно изменить languageLevel="и JDK_1_X" и атрибут вручную

Комментарии (0)

Вам нужно менять версию Java компилятор в построении конфигурации.

Комментарии (0)

Убедитесь, что правильно depency выбран. Файл > структура проекта

Выберите ваш проект и перейдите на вкладку зависимости. Выберите правильный несамостоятельных из выпадающего списка или создать новый.

Комментарии (0)

Если все предыдущие решения не'т работать для вас (который был мой случай), вы можете удалить intellij конфигурационные файлы:

  • project_directory/.idea/compiler.xml
  • project_directory/.idea/encodings.xml
  • project_directory/.idea/misc.xml
  • project_directory/.idea/modules.xml
  • project_directory/.idea/vcs.xml
  • project_directory/.idea/workspace.xml
  • и т. д.

Intellij будет восстанавливаться позже новые. Однако, будьте осторожны, это также удалит все настройки intellij сделал на проекте (я.е: конфигурация режима отладки ...)

Комментарии (0)