Kompatibilität mit Java 8 Spring

9

Ich bin gerade dabei, meine Anwendung von Java 7 nach Java 8 zu migrieren. Momentan benutze ich das Spring 3.1.6 jar. Wäre das mit Java 8 kompatibel oder müsste ich das Spring-Jar aktualisieren?

Ich verstehe, dass die Version Spring 4x natürlich Unterstützung für Java 8 hat, aber das ist zeitkritisch und ich versuche so wenig Gläser wie möglich zu verändern.

    
cpkarthic 28.08.2015, 19:56
quelle

3 Antworten

11

Grundsätzlich Spring 3.x versions unterstützt nur Java-7 . Wenn Sie zu Java-8 migrieren möchten, sollten Sie Spring 4.x version verwenden.

  

Allerdings heißt es in einigen Versionshinweisen, dass Spring Framework 3.2.x   unterstützt die Bereitstellung in JDK 8 runtimes für kompilierte Anwendungen   gegen JDK 7 (mit -target 1.7) oder früher. Beachten Sie, dass dies nicht der Fall ist   Unterstützung Bytecode-Format von JDK 8 (- Ziel 1.8, wie für Lambdas benötigt);   Bitte upgrade zu diesem Zweck auf Spring Framework 4.0 .

Folgen Sie diesem Link zum Quellartikel.

    
Channa Jayamuni 26.09.2015 13:00
quelle
3

Nein, es ist nicht kompatibel. Ich bin auf das gleiche Problem gestoßen und während viele sagen werden, dass Java 8 vollständig rückwärtskompatibel zu älteren Versionen von Java ist, stellt sich heraus, dass dies nicht wahr ist.

Dies hat eine sehr gute Erklärung für das genaue Problem, das ich in Java 7 gezielten Code mit Java 8 lief.

Ссылка

Da sich die API von ConcurrentHashMap zwischen den beiden Java-Releases geändert hat, bricht Spring beim Start ab und Sie erhalten

%Vor%

Ich hatte keine andere Wahl, als auf Spring 4.x zu aktualisieren (ich bin mir nicht sicher, ob 3.2 oder höher funktioniert hätte, da ich direkt zu 4.x gesprungen bin)

    
Ryba 11.07.2016 19:02
quelle
-3

Java 8 und der jvm 8 ist vollständig abwärtskompatibel mit allen älteren Versionen von Java. Java unternimmt sorgfältige Schritte, um sicherzustellen, dass neue Versionen alten Code nicht beschädigen. Jeder Code, den Sie für Java 7 geschrieben haben, kann mit Java 8 kompiliert werden, und jeder Code, den Sie für Java 7 kompiliert haben, kann auf jvm 8 laufen.

    
kag0 12.12.2015 06:41
quelle

Tags und Links