Warnung - Der Erstellungspfad gibt die Ausführungsumgebung J2SE-1.4 an

140

Ich erstelle ein Maven-Projekt in Eclipse Helios. Es funktioniert gut für einen Tag, aber dann wird diese Warnung angezeigt:

Der Erstellungspfad gibt die Ausführungsumgebung J2SE-1.4 an. Im Arbeitsbereich sind keine JREs installiert, die streng mit dieser Umgebung kompatibel sind.

Seit dieser Meldung hat das Projekt das Kompilieren und Debuggen eingestellt. Hat jemand eine Lösung für dieses Problem?

narsereg
quelle

Antworten:

226

In Eclipse aus Ihrem Projekt:

  1. Klicken Sie mit der rechten Maustaste auf Ihr Projekt
  2. Klicken Sie auf Eigenschaften
  3. Java-Erstellungspfad: Bibliotheken; Entfernen Sie die "JRE-Systembibliothek [J2SE 1.4]"
  4. Klicken Sie auf Bibliothek hinzufügen -> JRE-Systembibliothek
  5. Wählen Sie die neue Standard-JRE "Ausführungsumgebung" oder Arbeitsbereich aus
btpka3
quelle
43
Diese Antwort ist richtig für Eclipse, aber falsch für Maven + Eclipse
Chris Dolan
17
Dadurch wird das Problem vorübergehend behoben, bis ein weiterer Maven-Build ausgeführt wird. Zu diesem Zeitpunkt wird die JRE-Version auf den Standardwert zurückgesetzt. Siehe die Antwort von Pascal Thivent, um die im POM angegebene Standardversion der JRE zu ändern.
Matthewb
Alles funktioniert nicht. Immer wenn Sie [Alt] [F5] ausführen, um die Maven-Konfiguration zu aktualisieren, erhalten alle derartigen manuellen Optimierungen viele und die Warnung kommt zurück. Siehe bugs.eclipse.org/bugs/show_bug.cgi?id=376619
Jörg
181

Unabhängig davon , ob Sie das Maven-Eclipse-Plugin oder m2eclipse verwenden , wird die Projektkonfiguration von Eclipse vom POM abgeleitet. Daher müssen Sie das Maven-Compiler-Plugin für 1.6 konfigurieren (standardmäßig 1.4).

Fügen Sie Ihrem Projekt Folgendes hinzu pom.xml, speichern Sie es, gehen Sie zu Ihrem Eclipse-Projekt und wählen Sie Eigenschaften> Maven> Projektkonfiguration aktualisieren:

<project>
 <build>
  <pluginManagement>
   <plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>          
        <configuration>
            <source>1.6</source>
            <target>1.6</target>
        </configuration>
    </plugin>
   </plugins>
  </pluginManagement>
 </build>
</project>
Pascal Thivent
quelle
4
Ich stimme zu, das ist die richtige Antwort. Viele der anderen Lösungen lösen das Problem vorübergehend, bis ein weiterer Maven-Build ausgeführt wird. Zu diesem Zeitpunkt wird die JRE auf die Standardversion zurückgesetzt. Durch Hinzufügen dieses Plugins zum POM wird die Standard-JRE-Version geändert.
Matthewb
Wohin (vollständiger XPATH-Speicherort) in der pom.xml geht das? Wo immer ich es hinzufüge, klagt Maven über einen missgebildeten Pom.
Ed Randall
2
Dies ist die richtige Antwort. Die akzeptierte Antwort ist eine vorübergehende Lösung!
Scott Offen
@ EdRandall überprüfen Sie bitte maven.apache.org/plugins/maven-compiler-plugin/usage.html
Martin Dürrmeier
Ich habe dies in meinem Maven pom.xml und bekomme immer noch die Warnung. Alles scheint zu funktionieren, aber die Warnung ist immer noch da
ropo
10

Die oben genannten Lösungen beheben das Projekt oder umgehen das Problem auf irgendeine Weise. Manchmal möchten Sie das Projekt einfach nicht reparieren und stattdessen einfach die Warnung ausblenden.

Konfigurieren Sie dazu den Inhalt des Warnfelds und stellen Sie sicher, dass die Kategorie "Erstellungspfad" -> "JRE-Systempfadproblem" deaktiviert ist. Die Benutzeroberfläche für diesen Dialog ist etwas komplex / seltsam / benutzerfreundlich, sodass Sie möglicherweise mit einigen Optionen herumspielen müssen, damit er das tut, was Sie wollen.

Jilles van Gurp
quelle
Ich habe zwei Arbeitsbereiche auf die gleiche Weise mit einem JDK 7 eingerichtet, aber auf 1.6 kompiliert (wir werden irgendwann übergehen). Die Maschine wurde durch das gute alte Windows Update schwer heruntergefahren - und der geöffnete Arbeitsbereich zeigte dies und wurde nicht besänftigt. Vielen Dank für den Hinweis auf eine Problemumgehung!
RedYeti
13
Oder eine andere, etwas sauberere Methode: Fenster -> Einstellungen -> Java -> Compiler -> Erstellen -> Setzen Sie "Keine streng kompatible JRE für Ausführungsumgebung" auf "Ignorieren"
RedYeti
@ RedYeti das sollte funktionieren, aber es ist nichts für mich (Eclipse 4.5)
NathanChristie
3

Gehen Sie in den Eclipse-Einstellungen zu Java-> Installierte JREs-> Ausführungsumgebung und richten Sie eine JRE- Ausführungsumgebung für J2SE-1.4 ein

Krock
quelle
Dadurch wird das Problem vorübergehend behoben, bis ein weiterer Maven-Build ausgeführt wird. Zu diesem Zeitpunkt wird die JRE-Version auf den Standardwert zurückgesetzt. Siehe die Antwort von Pascal Thivent oben, um die im POM angegebene Standardversion der JRE zu ändern.
Matthewb
Nein, dies ändert die im Arbeitsbereich installierten JREs und nicht die für das spezifische Projekt (was die akzeptierte Antwort hatte)
AlBlue
3

Die eigentliche Ursache für diese Warnung ist, dass Sie Ihr Projekt so konfiguriert haben, dass es mit einer früheren JRE-Version ausgeführt wird, die Sie installiert haben. Im Allgemeinen tritt dies immer dann auf, wenn Sie alte Projekte mit neueren JREs verwenden.

Dies wird wahrscheinlich überhaupt keine Probleme verursachen. Wenn Sie jedoch wirklich sicher sein möchten, sollten Sie das richtige alte JDK installieren. Sie finden sie hier: http://www.oracle.com/technetwork/java/archive-139210.html

Wenn Sie dann Eclipse neu starten, können Sie unter Fenster> Einstellungen> Java> Installierte JREs> Ausführungsumgebungen J2SE-1.4 in Ihrem Fall die [perfekte Übereinstimmung] festlegen, wie Eclipse es nennt.

Christian
quelle
Upvoted, weil ich ein Java 7-Projekt habe und nur Java 8 installiert habe.
Amedee Van Gasse
2

Wenn Sie Java 1.8 haben, dann

Sie benötigen diesen XML-Teil in pom.xml und aktualisieren das Projekt.

 <properties>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
N ..
quelle
2

die richtige Vorgehensweise , diese Warnung zu beheben, wie andere Leute zu schreiben, ist in Ihrem Projekt gehen Eigenschaften und klicken Sie auf Java Build Path auf der linken Seite. Jetzt finden Sie im Bibliotheksfenster den J2SE 1.5 , doppelklicken Sie auf diesen und ein neues Fenster gibt Ihnen die Möglichkeit, die richtige Ausführungsumgebung auszuwählen . Wählen Sie nun Ihre Version aus und die Warnung verschwindet.

Cyberdemon
quelle
1

Haben Sie Ihr Projekt so eingerichtet, dass es mit 1.4-Konformität kompiliert wird? Wenn ja, tun Sie, was Krock gesagt hat . Um genauer zu sein, müssen Sie die J2SE-1.4-Ausführungsumgebung auswählen und eine der installierten JRE überprüfen, die Sie im 1.4-Konformitätsmodus verwenden möchten. Höchstwahrscheinlich ist eine 1.6 JRE installiert. Überprüfen Sie diese. Oder installieren Sie eine 1.4 JRE, wenn Sie ein Setup-Kit haben, und verwenden Sie dieses.

Andernfalls gehen Sie zu Ihren Eclipse-Einstellungen, Java -> Compiler und prüfen Sie, ob die Konformität auf 1.4 eingestellt ist. Wenn dies der Fall ist, ändern Sie es wieder auf 1.6. Wenn dies nicht der Fall ist, gehen Sie zu den Projekteigenschaften und überprüfen Sie, ob projektspezifische Einstellungen vorhanden sind. Gehen Sie zu Java Compiler und deaktivieren Sie diese Option, wenn Sie die allgemeinen Eclipse-Einstellungen verwenden möchten. Oder setzen Sie die projektspezifischen Einstellungen auf 1.6, sodass sie unabhängig von den Eclipse-Einstellungen immer 1.6 sind.

Andrei Fierbinteanu
quelle
Dadurch wird das Problem vorübergehend behoben, bis ein weiterer Maven-Build ausgeführt wird. Zu diesem Zeitpunkt wird die JRE-Version auf den Standardwert zurückgesetzt. Siehe die Antwort von Pascal Thivent oben, um die im POM angegebene Standardversion der JRE zu ändern.
Matthewb
0

Ändern Sie einfach die Version unter Fenster-> Einstellungen-> Java -> Installierte JREs. Überprüfen Sie die Liste der installierten JREs. Klicken Sie dann mit der rechten Maustaste auf Ihr Projekt -> Eigenschaften -> Java-Erstellungspfad -> Bibliotheken. Ändern Sie die "JRE-Systembibliothek" in die Version unter "installierte JREs".

Die Warnung wird weg sein.

Ankitha J.
quelle
-1

Ich erhielt eine Projektwarnung als " Erstellungspfad gibt die Ausführungsumgebung J2SE-1.5 an. Im Arbeitsbereich sind keine JREs installiert, die streng mit dieser Umgebung kompatibel sind ". Ich habe die J2SE1.5-Bibliothek entfernt und eine neue JRE-Systembibliothek hinzugefügt, die mein Problem behoben hat

Pragati Chaturvedi
quelle
Wie unterscheidet sich das von der Antwort von btpka3 ?
Stevoisiak
-1

Erweitern Sie Ihr Projekt im Arbeitsbereich >> Klicken Sie mit der rechten Maustaste (JRE-Systembibliotheken) >> wählen Sie Eigenschaften aus >> wählen Sie den Arbeitsbereich als Standard-JRE aus

Akhil
quelle
Dies wiederholt nur die Informationen, die in der Antwort
Stevoisiak