Ich habe ähnliche Fragen gesehen, aber noch keine Antwort gefunden.
Mit Maven Compile erhalte ich:
[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]
Hier ist die 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>
Javac-Version:
javac 1.7.0_25
Java-Version:
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)
Irgendeine Idee, was es sein könnte?
mvn -version
. Hier erfahren Sie, welches Java verwendet wird.Antworten:
Sie müssen JAVA_HOME auf Ihr jdk7-Ausgangsverzeichnis setzen, beispielsweise unter Microsoft Windows:
oder unter OS X:
quelle
export JAVA_HOME=$(/usr/libexec/java_home -v 1.7)
source ~/.profile
Abgesehen vom Festlegen der
JAVA_HOME
Umgebungsvariablen müssen Sie sicherstellen, dass Sie das richtige JDK in Ihrer Maven-Ausführungskonfiguration verwenden. Gehen Sie zu Ausführen -> Konfiguration ausführen , wählen Sie Ihre Maven Build-Konfiguration aus, wechseln Sie zur Registerkarte JRE und stellen Sie die richtige Laufzeit-JRE ein.quelle
In IntelliJ IDEA passierte mir dies, als ich ein Projekt importierte, das einwandfrei funktionierte und mit Java 1.7 lief. Ich hatte IntelliJ anscheinend nicht benachrichtigt, dass Java 1.7 auf meinem Computer installiert war, und es fand meine nicht
$JAVA_HOME
.Auf einem Mac wird dies behoben durch:
Klicken Sie mit der rechten Maustaste auf das Modul | Moduleinstellungen | Projekt
und Hinzufügen des 1.7 SDK durch Auswahl von "Neu" im Projekt-SDK.
Gehen Sie dann zum Hauptmenü von IntelliJ IDEA | Einstellungen | Maven | Läufer
und wählen Sie die richtige JRE. In meinem Fall wurde es korrekt aktualisiert. Verwenden Sie das Project SDK, das jetzt 1.7 war.
quelle
Wenn Maven außerhalb von Eclipse arbeitet, diesen Fehler jedoch nach einer JDK-Änderung anzeigt, wechseln Sie zu Ihrer Maven-Ausführungskonfiguration. Am Ende der Hauptseite befindet sich die Option "Maven-Laufzeit". Meins benutzte den Embedded Maven, also funktionierte es, nachdem ich ihn auf meinen externen Maven umgestellt hatte.
quelle
Dies funktioniert wahrscheinlich für viele Dinge, aber es reicht nicht für Maven und schon gar nicht für das Maven-Compiler-Plugin.
Überprüfen Sie hier Mikes Antwort auf seine eigene Frage: Stackoverflow-Frage 24705877
Dies löste das Problem für mich sowohl über die Befehlszeile als auch innerhalb von Eclipse.
Auch die Antwort von @LinGao auf die Stackoverflow-Frage 2503658 und die Verwendung der Variablen $ JAVACMD könnten hilfreich sein, aber ich habe sie selbst nicht getestet.
quelle