IDEA: javac: versão fonte 1.7 requer a versão alvo 1.7

Ao executar um teste JUnit, usando o IntelliJ IDEA, eu recebo

Como posso corrigir isto?

  • Usando o SDK 1.7
  • O nível de linguagem do módulo é 1.7

A construção Maven funciona bem. (Esse's é o porquê de eu acreditar nisso no problema de configuração IDEA)

Solução

Muito provavelmente você tem opções incorretas de compilação importadas da Maven aqui:

Verifique também as configurações de projeto e bytecode de módulo (target) da versão delineada na captura de tela.

Outros lugares onde o nível de linguagem source está configurado:

  • Estrutura do projecto | **Projecto***

  • Estrutura do Projeto | Módulos (verifique cada módulo) | **Fontes***

Maven nível de idioma por defeito é 1.5 (5.0), você verá esta versão como o nível de idioma do Módulo na captura de tela acima.

Isto pode ser alterado utilizando a configuração maven-compiler-plugin dentro do pom.xml:


  [...]

    [...]


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

          1.8
          1.8



    [...]

  [...]

ou


  [...]

    1.8
    1.8

  [...]

IntelliJ IDEA irá respeitar esta configuração depois que você Reimportar o projeto Maven na janela de ferramentas Maven Projects:

Comentários (12)

Encontrei isto e a correção foi ir para Project Settings > Modules > clique no módulo específico > guia Dependencies. Notei que o Módulo SDK ainda estava configurado em 1.6, mudei-o para 1.7 e funcionou.

Comentários (1)

I'encontrei as opções necessárias ('target bytecode version') em settings > compiler > java compiler no meu caso (intelij idea 12.1.3)

Comentários (0)