{"version":"23","name":"Java 23","ga":"2024-09-17","eol":"2025-03-18","umbrellajsr":"398","latestversion":"23.0.2","status":"EOL","bytecode":"67.0","unicode":"15.1.0","documentation":{"notes":"https://www.oracle.com/java/technologies/javase/23u-relnotes.html","vm":"https://docs.oracle.com/javase/specs/jvms/se23/html/index.html","lang":"https://docs.oracle.com/javase/specs/jls/se23/html/index.html","api":"https://docs.oracle.com/en/java/javase/23/docs/api/","tools":"https://docs.oracle.com/en/java/javase/23/docs/specs/man/index.html"},"scm":[{"type":"git","url":"https://github.com/openjdk/jdk23u"}],"updates":[{"version":"23","tag":"jdk-23-ga","date":"2024-09-17"},{"version":"23.0.1","tag":"jdk-23.0.1-ga","date":"2024-10-16"},{"version":"23.0.2","tag":"jdk-23.0.2-ga","date":"2025-01-21"}],"features":[{"title":"Primitive Types in Patterns, instanceof, and switch","category":"lang","preview":true,"revision":1,"refs":[{"type":"JEP","identifier":"455","href":"https://openjdk.java.net/jeps/455"}]},{"title":"Module Import Declarations","category":"lang","preview":true,"revision":1,"refs":[{"type":"JEP","identifier":"476","href":"https://openjdk.java.net/jeps/476"}]},{"title":"Implicitly Declared Classes and Instance Main Methods","category":"lang","preview":true,"revision":3,"refs":[{"type":"JEP","identifier":"477","href":"https://openjdk.java.net/jeps/477"}]},{"title":"Flexible Constructor Bodies","category":"lang","preview":true,"revision":2,"refs":[{"type":"JEP","identifier":"482","href":"https://openjdk.java.net/jeps/482"}]},{"title":"Class-File API","category":"api","preview":true,"revision":2,"refs":[{"type":"JEP","identifier":"466","href":"https://openjdk.java.net/jeps/466"}]},{"title":"Deprecate the Memory-Access Methods in sun.misc.Unsafe for Removal","category":"api","refs":[{"type":"JEP","identifier":"471","href":"https://openjdk.java.net/jeps/471"}]},{"title":"Stream Gatherers","category":"api","preview":true,"revision":2,"refs":[{"type":"JEP","identifier":"473","href":"https://openjdk.java.net/jeps/473"},{"type":"AlmanacFeature","identifier":"gatherers","href":"https://javaalmanac.io/features/gatherers/"}]},{"title":"Structured Concurrency","category":"api","preview":true,"revision":3,"refs":[{"type":"JEP","identifier":"480","href":"https://openjdk.java.net/jeps/480"}]},{"title":"Scoped Values","category":"api","preview":true,"revision":3,"refs":[{"type":"JEP","identifier":"481","href":"https://openjdk.java.net/jeps/481"}]},{"title":"ZGC: Generational Mode by Default","category":"jvm","refs":[{"type":"JEP","identifier":"474","href":"https://openjdk.java.net/jeps/474"}]},{"title":"Markdown Documentation Comments","category":"tools","refs":[{"type":"JEP","identifier":"467","href":"https://openjdk.java.net/jeps/467"}]}],"apidiffversions":["1.0","1.1","1.2","1.3","1.4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22"],"vendors":[{"name":"BellSoft","url":"https://bell-sw.com/","products":[{"id":"liberica","name":"Liberica","license":"GPLv2+CE","url":"https://bell-sw.com/pages/downloads/?version=java-23","platforms":["alpine-arm64","alpine-x64","linux-arm32","linux-arm64","linux-ppc64le","linux-riscv64","linux-x86","linux-x64","macos-arm64","macos-x64","windows-arm64","windows-x64"],"versions":["23"],"foojaydownload":true}]},{"name":"SAP","url":"https://sapmachine.io/","products":[{"id":"sap_machine","name":"SapMachine 23","license":"GPLv2+CE","url":"https://github.com/SAP/SapMachine/releases?q=%22sapmachine-23%22","platforms":["aix-ppc64","alpine-x64","linux-arm64","linux-ppc64le","linux-x64","macos-arm64","macos-x64","windows-x64"],"versions":["23"],"foojaydownload":true}]},{"name":"Oracle","url":"https://www.oracle.com/java/","products":[{"id":"oracle","name":"Oracle JDK 23","license":"Oracle No-Fee","url":"https://www.oracle.com/java/technologies/javase/jdk23-archive-downloads.html","platforms":["linux-arm64","linux-x64","macos-arm64","macos-x64","windows-x64"],"versions":["23"],"foojaydownload":true}]},{"name":"IBM","url":"https://www.ibm.com/support/pages/java-sdk-downloads","products":[{"id":"semeru","name":"Semeru Runtime Open Edition, Version 23","license":"GPLv2+CE","url":"https://developer.ibm.com/languages/java/semeru-runtimes/downloads?version=23","platforms":["aix-ppc64","linux-arm64","linux-ppc64le","linux-s390x","linux-x64","macos-arm64","macos-x64","windows-x64"],"versions":["23"],"foojaydownload":true}]},{"name":"Azul Systems","url":"https://www.azul.com/","products":[{"id":"zulu","name":"Zulu Builds of OpenJDK 23","license":"GPLv2+CE","url":"https://www.azul.com/downloads/?version=java-23&show-old-builds=true#zulu","platforms":["alpine-arm64","alpine-x64","linux-arm64","linux-x64","macos-arm64","macos-x64","windows-x64"],"versions":["23"],"foojaydownload":true}]},{"name":"Adoptium","url":"https://adoptium.net/","products":[{"id":"temurin","name":"Eclipse Temurin","license":"GPLv2+CE","url":"https://adoptium.net/temurin/releases/?version=23","platforms":["aix-ppc64","alpine-arm64","alpine-x64","linux-arm64","linux-ppc64le","linux-riscv64","linux-s390x","linux-x64","macos-arm64","macos-x64","windows-arm64","windows-x64"],"versions":["23"],"foojaydownload":true}]}]}