How to Upgrade to Java 25 #RoadTo25
Updating from Java 21 to 25 is a smooth experience. Unless you're working on an unlucky project that collected all the little details that change: Whether it...

Java
24.5K views β’ Aug 24, 2025

About this video
Updating from Java 21 to 25 is a smooth experience. Unless you're working on an unlucky project that collected all the little details that change: Whether it's annotation processing, null checks, file operations or the removal of old technologies, Peter collects them all.
JDK 25: https://jdk.java.net/25/
Java 25 Launch Stream: https://dev.java/community/java-25-launch/
ACME Soft's Road to 25: https://www.youtube.com/playlist?list=PLX8CzqL3ArzXJ2_0FIGleUisXuUm4AESE
~~~~~ Chapters ~~~~~
0:00 Intro
0:55 Default Annotation Processing
* https://inside.java/2024/06/18/quality-heads-up/
2:58 Final Record Pattern Variables
* https://bugs.openjdk.org/browse/JDK-8317300
4:15 Security Property "include"
* https://inside.java/2024/12/10/quality-heads-up/
4:55 Null Checks in Inner Class Constructors
* https://inside.java/2025/04/04/quality-heads-up/
6:40 Unsafe Memory Access
* memory access warnings: https://openjdk.org/jeps/498
* memory access deprecation: https://openjdk.org/jeps/471
* shouldBeInitialized, ensureClassInitialized: https://bugs.openjdk.org/browse/JDK-8316160
* park, unpark, ...Fence: https://bugs.openjdk.org/browse/JDK-8315938
8:52 Native Access
* https://inside.java/2024/12/09/quality-heads-up/
* https://openjdk.org/jeps/472
* restricted methods in JDK 24: https://docs.oracle.com/en/java/javase/24/docs/api/restricted-list.html
10:53 Security Manager
* https://inside.java/2024/12/11/quality-heads-up/
* https://openjdk.org/jeps/486
* changes to `Subject` API: https://inside.java/2024/07/08/quality-heads-up/
11:57 File System Operations on Windows
* deletion and trailing spaces: https://inside.java/2025/06/16/quality-heads-up/
* `\\?\C:\` style paths: https://bugs.openjdk.org/browse/JDK-8287843
* trailing space in paths: https://bugs.openjdk.org/browse/JDK-8354450
* deleting read-only files: https://bugs.openjdk.org/browse/JDK-8355954
13:04 Unicode Updates and COMPAT Removal
* CLDR by default: https://openjdk.org/jeps/252
* COMPAT removal: https://inside.java/2024/07/11/quality-heads-up/ & https://bugs.openjdk.org/browse/JDK-8174269
* CLDR updates: https://inside.java/2024/03/29/quality-heads-up/
* CLDR v44: https://bugs.openjdk.org/browse/JDK-8306116 & https://cldr.unicode.org/downloads/cldr-44
14:41 Intermission
15:26 Removals
* 32bit: https://openjdk.org/jeps/503
* GTK2: https://bugs.openjdk.org/browse/JDK-8329471 & https://openjdk.org/jeps/283
* time zones: https://bugs.openjdk.org/browse/JDK-8340477
* command line options:
`-XX:[+-]RegisterFinalizersAtInit`: https://bugs.openjdk.org/browse/JDK-8320335 & https://bugs.openjdk.org/browse/JDK-8320522
`-XX:+UseEmptySlotsInSupers`: https://bugs.openjdk.org/browse/JDK-8330607 & https://bugs.openjdk.org/browse/JDK-8330699
`-Xnoagent`: https://bugs.openjdk.org/browse/JDK-8312072 & https://bugs.openjdk.org/browse/JDK-8312150
`-t`, `-tm`, `-Xfuture`, `-checksource`, `-cs`, and `-noasyncgc`: https://bugs.openjdk.org/browse/JDK-8339918
`jdeps -profile`, `-p`: https://bugs.openjdk.org/browse/JDK-8310460
* methods on `Thread` and `ThreadGroup`: https://bugs.openjdk.org/browse/JDK-8320532 & https://bugs.openjdk.org/browse/JDK-8320786
* system property `jdk.reflect.useDirectMethodHandle`: https://bugs.openjdk.org/browse/JDK-8305104
* module _jdk.random_: https://bugs.openjdk.org/browse/JDK-8330005
18:24 Deprecations for Removal
* various command line flags: https://bugs.openjdk.org/browse/JDK-8227229, https://bugs.openjdk.org/browse/JDK-8286851, https://bugs.openjdk.org/browse/JDK-8350754
* modules: https://bugs.openjdk.org/browse/JDK-8311530 & https://bugs.openjdk.org/browse/JDK-8308398
19:12 Separate Metaspace and GC Printing
* https://inside.java/2025/06/09/quality-heads-up/
20:41 Remote Debugging with jstat and jhsdb
* https://inside.java/2025/01/31/quality-heads-up/
21:53 Outro
Tags: #Java #Java25 #Update #OpenJDK
JDK 25: https://jdk.java.net/25/
Java 25 Launch Stream: https://dev.java/community/java-25-launch/
ACME Soft's Road to 25: https://www.youtube.com/playlist?list=PLX8CzqL3ArzXJ2_0FIGleUisXuUm4AESE
~~~~~ Chapters ~~~~~
0:00 Intro
0:55 Default Annotation Processing
* https://inside.java/2024/06/18/quality-heads-up/
2:58 Final Record Pattern Variables
* https://bugs.openjdk.org/browse/JDK-8317300
4:15 Security Property "include"
* https://inside.java/2024/12/10/quality-heads-up/
4:55 Null Checks in Inner Class Constructors
* https://inside.java/2025/04/04/quality-heads-up/
6:40 Unsafe Memory Access
* memory access warnings: https://openjdk.org/jeps/498
* memory access deprecation: https://openjdk.org/jeps/471
* shouldBeInitialized, ensureClassInitialized: https://bugs.openjdk.org/browse/JDK-8316160
* park, unpark, ...Fence: https://bugs.openjdk.org/browse/JDK-8315938
8:52 Native Access
* https://inside.java/2024/12/09/quality-heads-up/
* https://openjdk.org/jeps/472
* restricted methods in JDK 24: https://docs.oracle.com/en/java/javase/24/docs/api/restricted-list.html
10:53 Security Manager
* https://inside.java/2024/12/11/quality-heads-up/
* https://openjdk.org/jeps/486
* changes to `Subject` API: https://inside.java/2024/07/08/quality-heads-up/
11:57 File System Operations on Windows
* deletion and trailing spaces: https://inside.java/2025/06/16/quality-heads-up/
* `\\?\C:\` style paths: https://bugs.openjdk.org/browse/JDK-8287843
* trailing space in paths: https://bugs.openjdk.org/browse/JDK-8354450
* deleting read-only files: https://bugs.openjdk.org/browse/JDK-8355954
13:04 Unicode Updates and COMPAT Removal
* CLDR by default: https://openjdk.org/jeps/252
* COMPAT removal: https://inside.java/2024/07/11/quality-heads-up/ & https://bugs.openjdk.org/browse/JDK-8174269
* CLDR updates: https://inside.java/2024/03/29/quality-heads-up/
* CLDR v44: https://bugs.openjdk.org/browse/JDK-8306116 & https://cldr.unicode.org/downloads/cldr-44
14:41 Intermission
15:26 Removals
* 32bit: https://openjdk.org/jeps/503
* GTK2: https://bugs.openjdk.org/browse/JDK-8329471 & https://openjdk.org/jeps/283
* time zones: https://bugs.openjdk.org/browse/JDK-8340477
* command line options:
`-XX:[+-]RegisterFinalizersAtInit`: https://bugs.openjdk.org/browse/JDK-8320335 & https://bugs.openjdk.org/browse/JDK-8320522
`-XX:+UseEmptySlotsInSupers`: https://bugs.openjdk.org/browse/JDK-8330607 & https://bugs.openjdk.org/browse/JDK-8330699
`-Xnoagent`: https://bugs.openjdk.org/browse/JDK-8312072 & https://bugs.openjdk.org/browse/JDK-8312150
`-t`, `-tm`, `-Xfuture`, `-checksource`, `-cs`, and `-noasyncgc`: https://bugs.openjdk.org/browse/JDK-8339918
`jdeps -profile`, `-p`: https://bugs.openjdk.org/browse/JDK-8310460
* methods on `Thread` and `ThreadGroup`: https://bugs.openjdk.org/browse/JDK-8320532 & https://bugs.openjdk.org/browse/JDK-8320786
* system property `jdk.reflect.useDirectMethodHandle`: https://bugs.openjdk.org/browse/JDK-8305104
* module _jdk.random_: https://bugs.openjdk.org/browse/JDK-8330005
18:24 Deprecations for Removal
* various command line flags: https://bugs.openjdk.org/browse/JDK-8227229, https://bugs.openjdk.org/browse/JDK-8286851, https://bugs.openjdk.org/browse/JDK-8350754
* modules: https://bugs.openjdk.org/browse/JDK-8311530 & https://bugs.openjdk.org/browse/JDK-8308398
19:12 Separate Metaspace and GC Printing
* https://inside.java/2025/06/09/quality-heads-up/
20:41 Remote Debugging with jstat and jhsdb
* https://inside.java/2025/01/31/quality-heads-up/
21:53 Outro
Tags: #Java #Java25 #Update #OpenJDK
Tags and Topics
Browse our collection to discover more content in these categories.
Video Information
Views
24.5K
Likes
717
Duration
22:41
Published
Aug 24, 2025
User Reviews
4.6
(4) Related Trending Topics
LIVE TRENDSRelated trending topics. Click any trend to explore more videos.
No specific trending topics match this video yet.
Explore All Trends