He visto preguntas similares, pero aún no he encontrado la respuesta.
Usando compilación maven, obtengo:
[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]
Aquí está el 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>
Versión Javac:
javac 1.7.0_25
Versión de 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)
¿Alguna idea de que podría ser?
mvn -version
. Te dirá qué Java usa.Respuestas:
Debe configurar JAVA_HOME en su directorio de inicio jdk7, por ejemplo en Microsoft Windows:
o en OS X:
fuente
export JAVA_HOME=$(/usr/libexec/java_home -v 1.7)
source ~/.profile
Además de establecer
JAVA_HOME
la variable de entorno, debe asegurarse de estar utilizando el JDK correcto en la configuración de ejecución de Maven. Vaya a Ejecutar -> Ejecutar configuración , seleccione su configuración de Maven Build, vaya a la pestaña JRE y configure el JRE de tiempo de ejecución correcto.fuente
En IntelliJ IDEA esto me sucedió cuando importé un proyecto que funcionaba bien y se ejecutaba con Java 1.7. Aparentemente no le había notificado a IntelliJ que java 1.7 había sido instalado en mi máquina, y no estaba encontrando mi
$JAVA_HOME
.En una Mac, esto se resuelve mediante:
Haga clic derecho en el módulo | Configuración del módulo | Proyecto
y agregando el 1.7 SDK seleccionando "Nuevo" en el SDK del Proyecto.
Luego vaya al menú principal de IntelliJ IDEA | Preferencias Maven | Corredor
y seleccione el JRE correcto. En mi caso, se actualizó correctamente Use Project SDK, que ahora era 1.7.
fuente
Cuando maven está trabajando fuera de Eclipse, pero al dar este error después de un cambio de JDK, vaya a su Configuración de ejecución de Maven, y en la parte inferior de la página principal, hay una opción 'Tiempo de ejecución de Maven'. El mío estaba usando el Maven incorporado, así que después de cambiarlo para usar mi Maven externo, funcionó.
fuente
Esto probablemente funcione para muchas cosas, pero no es suficiente para Maven y ciertamente no para el complemento compilador de Maven.
Verifique la respuesta de Mike a su propia pregunta aquí: pregunta de stackoverflow 24705877
Esto resolvió el problema para mí tanto en la línea de comando Y dentro del eclipse.
Además, @LinGao responde a la pregunta 2503658 de stackoverflow y el uso de la variable $ JAVACMD podría ayudar, pero no lo he probado yo mismo.
fuente