Vi perguntas semelhantes, mas ainda não encontrei a resposta.
Usando o maven compile, recebo:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.0:compile (default-compile) on project api: Fatal error compiling: invalid target release: 1.7 -> [Help 1]
Aqui está o pom.xml:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.0</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
Versão Javac:
javac 1.7.0_25
Versão Java:
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
Alguma idéia do que poderia ser?
mvn -version
. Ele lhe dirá qual Java ele usa.Respostas:
Você precisa definir JAVA_HOME no diretório inicial do jdk7, por exemplo, no Microsoft Windows:
ou no OS X:
fonte
export JAVA_HOME=$(/usr/libexec/java_home -v 1.7)
source ~/.profile
Além de definir
JAVA_HOME
a variável de ambiente, você precisa garantir que está usando o JDK correto na configuração de execução do Maven. Vá para Executar -> Executar Configuração , selecione sua configuração do Maven Build, vá para a guia JRE e defina o JRE de tempo de execução correto.fonte
No IntelliJ IDEA, isso aconteceu comigo quando eu importei um projeto que estava funcionando bem e rodando com o Java 1.7. Aparentemente, eu não tinha notificado o IntelliJ de que o java 1.7 havia sido instalado na minha máquina e não estava encontrando o meu
$JAVA_HOME
.Em um Mac, isso é resolvido por:
Clique com o botão direito do mouse no módulo | Configurações do módulo | Projeto
e adicionando o SDK 1.7, selecionando "Novo" no SDK do projeto.
Então vá para o menu principal do IntelliJ IDEA | Preferências Maven Corredor
e selecione o JRE correto. No meu caso, ele foi atualizado corretamente Use o Project SDK, que agora era 1.7.
fonte
Quando o maven estiver trabalhando fora do Eclipse, mas fornecendo esse erro após uma alteração no JDK, vá para a configuração de execução do Maven e, na parte inferior da página principal, há a opção 'Maven Runtime'. O meu estava usando o Embedded Maven, então, depois de trocá-lo para usar meu maven externo, funcionou.
fonte
Isso provavelmente funciona para muitas coisas, mas não é suficiente para o Maven e certamente não para o plug-in do compilador maven.
Verifique a resposta de Mike para sua própria pergunta aqui: stackoverflow question 24705877
Isso resolveu o problema para mim, tanto na linha de comando quanto no eclipse.
Além disso, a resposta do @LinGao à pergunta 2503658 do stackoverflow e o uso da variável $ JAVACMD podem ajudar, mas eu mesmo não a testei.
fonte