Sortie officielle de Java 25 / JDK 25
(openjdk.org)- Java 25 et son implémentation de référence JDK 25 ont été officiellement publiés
- Cette version inclut 18 nouveaux JEP (Java Enhancement Proposal)
- Parmi les principaux changements : suppression du port x86 32 bits, Scoped Values, Structured Concurrency, améliorations des Primitive Types
Java 25 / JDK 25 : sortie officielle
- JDK 25, c’est-à-dire l’implémentation de référence de Java 25, a été officiellement publié en version prête pour la production
- Le 15 août 2025, le deuxième release candidate, build 36, a été mis à disposition ; depuis, aucun bug critique (P1) n’a été signalé.
- Le build 36 constitue la version GA (General Availability) finale et peut être utilisé en environnement de production
- Le build OpenJDK sous licence GPL est fourni officiellement par Oracle, et des builds d’autres éditeurs devraient également être diffusés prochainement
Lien officiel de téléchargement OpenJDK
Fonctionnalités et améliorations principales
Cette release inclut 18 JEP (Java Enhancement Proposal)
- 470 : encodage d’objets cryptographiques basé sur PEM (preview)
- 502 : Stable Values (preview)
- 503 : suppression du port x86 32 bits
- 505 : Structured Concurrency (5e preview)
- 506 : Scoped Values
- 507 : prise en charge des Primitive Types dans les patterns,
instanceofetswitch(3e preview) - 508 : Vector API (10e version incubateur)
- 509 : profilage du temps CPU avec JFR (fonction expérimentale)
- 510 : Key Derivation Function API
- 511 : déclarations Module Import
- 512 : Compact Source Files et méthode
maind’instance - 513 : Flexible Constructor Bodies
- 514 : optimisation Ahead-of-Time en ligne de commande
- 515 : profilage de méthodes Ahead-of-Time
- 518 : échantillonnage coopératif JFR
- 519 : Compact Object Headers
- 520 : timing et traçage de méthodes JFR
- 521 : Generational Shenandoah
En plus des JEP ci-dessus, cette release intègre également des centaines de petites améliorations fonctionnelles et des milliers de corrections de bugs
Pour plus d’informations sur cette release et le détail des JEP, voir la
page du projet OpenJDK JDK 25
3 commentaires
Le revoilà, comme l’an dernier, il n’est ni mort ni enterré, allez hop, ça repart... Pourquoi est-ce que tu reviens sans arrêt ?
C’est une fonctionnalité arrivée avec JDK 24, mais comme Java a tendance à être utilisé surtout en version LTS, il est aussi intéressant de noter qu’avec le JEP 491: Synchronize Virtual Threads without Pinning, le phénomène de pinning des threads virtuels lors de l’utilisation du mot-clé
synchronizeda disparu.Il arrivait assez souvent que les benchmarks en conditions réelles des threads virtuels soient plus lents, et dans la plupart des cas, le pinning en était la cause.
Avis Hacker News
superdans le constructeur ; ça m’a toujours semblé contre-intuitif.staticpour la validation dans les paramètres passés àsuper, elle était en pratique appelée avantsuper, donc le compilateur n’y voyait aucun problème.import *est facile à écrire, mais bien plus difficile à lire, surtout pour les développeurs qui ne connaissent pas bien le langage ou la base de code. C# et Nim ont aussi ce style, et sans IDE je trouve ça presque illisible. C’est pourquoi je préfère des alias courts comme en Python (import torch.nn.functional as F).