Amber
Core Libs
Panama
Loom
Java version:
https://javaalmanac.io/jdk/10/10
https://javaalmanac.io/jdk/11/11
LTS
https://javaalmanac.io/jdk/12/12
https://javaalmanac.io/jdk/13/13
https://javaalmanac.io/jdk/14/14
https://javaalmanac.io/jdk/15/15
https://javaalmanac.io/jdk/16/16
https://javaalmanac.io/jdk/17/17
LTS
https://javaalmanac.io/jdk/18/18
https://javaalmanac.io/jdk/19/19
https://javaalmanac.io/jdk/20/20
https://javaalmanac.io/jdk/21/21
LTS
https://javaalmanac.io/jdk/22/22
https://javaalmanac.io/jdk/23/23
https://javaalmanac.io/jdk/24/24
EA
JEP 286: Local-Variable Type Inference
JEP 286: Local-Variable Type Inference286
var
JEP 323: Local-Variable Syntax for Lambda Parameters
JEP 323: Local-Variable Syntax for Lambda Parameters323
var in lambdas
JEP 325: Switch Expressions (Preview)
JEP 325: Switch Expressions (Preview)325
JEP 354: Switch Expressions (Second Preview)
JEP 354: Switch Expressions (Second Preview)354
JEP 361: Switch Expressions
JEP 361: Switch Expressions361
switch expressions
JEP 355: Text Blocks (Preview)
JEP 355: Text Blocks (Preview)355
JEP 368: Text Blocks (Second Preview)
JEP 368: Text Blocks (Second Preview)368
JEP 378: Text Blocks
JEP 378: Text Blocks378
text blocks
JEP 359: Records (Preview)
JEP 359: Records (Preview)359
JEP 384: Records (Second Preview)
JEP 384: Records (Second Preview)384
JEP 395: Records
JEP 395: Records395
records
JEP 305: Pattern Matching for instanceof (Preview)
JEP 305: Pattern Matching for instanceof (Preview)305
JEP 375: Pattern Matching for instanceof (Second Preview)
JEP 375: Pattern Matching for instanceof (Second Preview)375
JEP 394: Pattern Matching for instanceof
JEP 394: Pattern Matching for instanceof394
pattern matching for instanceof
JEP 360: Sealed Classes (Preview)
JEP 360: Sealed Classes (Preview)360
JEP 397: Sealed Classes (Second Preview)
JEP 397: Sealed Classes (Second Preview)397
JEP 409: Sealed Classes
JEP 409: Sealed Classes409
sealed classes
JEP 406: Pattern Matching for switch (Preview)
JEP 406: Pattern Matching for switch (Preview)406
JEP 420: Pattern Matching for switch (Second Preview)
JEP 420: Pattern Matching for switch (Second Preview)420
JEP 427: Pattern Matching for switch (Third Preview)
JEP 427: Pattern Matching for switch (Third Preview)427
JEP 433: Pattern Matching for switch (Fourth Preview)
JEP 433: Pattern Matching for switch (Fourth Preview)433
JEP 441: Pattern Matching for switch
JEP 441: Pattern Matching for switch441
pattern matching for switch
JEP 405: Record Patterns (Preview)
JEP 405: Record Patterns (Preview)405
JEP 432: Record Patterns (Second Preview)
JEP 432: Record Patterns (Second Preview)432
JEP 440: Record Patterns
JEP 440: Record Patterns440
record patterns
JEP 443: Unnamed Patterns and Variables (Preview)
JEP 443: Unnamed Patterns and Variables (Preview)443
JEP 456: Unnamed Variables & Patterns
JEP 456: Unnamed Variables & Patterns456
unnamed patterns and variables
JEP 430: String Templates (Preview)
JEP 430: String Templates (Preview)430
JEP 459: String Templates (Second Preview)
JEP 459: String Templates (Second Preview)459
string templates
JEP 445: Unnamed Classes and Instance Main Methods (Preview)
JEP 445: Unnamed Classes and Instance Main Methods (Preview)445
JEP 463: Implicitly Declared Classes and Instance Main Methods (Second Preview)
JEP 463: Implicitly Declared Classes and Instance Main Methods (Second Preview)463
JEP 477: Implicitly Declared Classes and Instance Main Methods (Third Preview)
JEP 477: Implicitly Declared Classes and Instance Main Methods (Third Preview)477
Implicitly Declared Classes and Instance Main Methods (Fourth Preview)
Implicitly Declared Classes and Instance Main Methods (Fourth Preview)8335984
implicitly declared classes
JEP 447: Statements before super(...) (Preview)
JEP 447: Statements before super(...) (Preview)447
JEP 482: Flexible Constructor Bodies (Second Preview)
JEP 482: Flexible Constructor Bodies (Second Preview)482
JEP 492: Flexible Constructor Bodies (Third Preview)
JEP 492: Flexible Constructor Bodies (Third Preview)492
statements before super()
JEP 455: Primitive Types in Patterns, instanceof, and switch (Preview)
JEP 455: Primitive Types in Patterns, instanceof, and switch (Preview)455
JEP 488: Primitive Types in Patterns, instanceof, and switch (Second Preview)
JEP 488: Primitive Types in Patterns, instanceof, and switch (Second Preview)488
primitive types in patterns
JEP 476: Module Import Declarations (Preview)
JEP 476: Module Import Declarations (Preview)476
Module Import Declarations (Second Preview)
Module Import Declarations (Second Preview)8335987
module import declarations
JEP 457: Class-File API (Preview)
JEP 457: Class-File API (Preview)457
JEP 466: Class-File API (Second Preview)
JEP 466: Class-File API (Second Preview)466
JEP 484: Class-File API
JEP 484: Class-File API484
class-file API
JEP 461: Stream Gatherers (Preview)
JEP 461: Stream Gatherers (Preview)461
JEP 473: Stream Gatherers (Second Preview)
JEP 473: Stream Gatherers (Second Preview)473
JEP 485: Stream Gatherers
JEP 485: Stream Gatherers485
stream gatherers
JEP 370: Foreign-Memory Access API (Incubator)
JEP 370: Foreign-Memory Access API (Incubator)370
JEP 383: Foreign-Memory Access API (Second Incubator)
JEP 383: Foreign-Memory Access API (Second Incubator)383
JEP 393: Foreign-Memory Access API (Third Incubator)
JEP 393: Foreign-Memory Access API (Third Incubator)393
foreign-memory access API
JEP 389: Foreign Linker API (Incubator)
JEP 389: Foreign Linker API (Incubator)389
foreign linker API
JEP 412: Foreign Function & Memory API (Incubator)
JEP 412: Foreign Function & Memory API (Incubator)412
JEP 419: Foreign Function & Memory API (Second Incubator)
JEP 419: Foreign Function & Memory API (Second Incubator)419
JEP 424: Foreign Function & Memory API (Preview)
JEP 424: Foreign Function & Memory API (Preview)424
JEP 434: Foreign Function & Memory API (Second Preview)
JEP 434: Foreign Function & Memory API (Second Preview)434
JEP 442: Foreign Function & Memory API (Third Preview)
JEP 442: Foreign Function & Memory API (Third Preview)442
JEP 454: Foreign Function & Memory API
JEP 454: Foreign Function & Memory API454
foreign function & memory API
JEP 338: Vector API (Incubator)
JEP 338: Vector API (Incubator)338
JEP 414: Vector API (Second Incubator)
JEP 414: Vector API (Second Incubator)414
JEP 417: Vector API (Third Incubator)
JEP 417: Vector API (Third Incubator)417
JEP 426: Vector API (Fourth Incubator)
JEP 426: Vector API (Fourth Incubator)426
JEP 438: Vector API (Fifth Incubator)
JEP 438: Vector API (Fifth Incubator)438
JEP 448: Vector API (Sixth Incubator)
JEP 448: Vector API (Sixth Incubator)448
JEP 460: Vector API (Seventh Incubator)
JEP 460: Vector API (Seventh Incubator)460
JEP 469: Vector API (Eighth Incubator)
JEP 469: Vector API (Eighth Incubator)469
JEP 489: Vector API (Ninth Incubator)
JEP 489: Vector API (Ninth Incubator)489
vector API
JEP 425: Virtual Threads (Preview)
JEP 425: Virtual Threads (Preview)425
JEP 436: Virtual Threads (Second Preview)
JEP 436: Virtual Threads (Second Preview)436
JEP 444: Virtual Threads
JEP 444: Virtual Threads444
virtual threads
JEP 428: Structured Concurrency (Incubator)
JEP 428: Structured Concurrency (Incubator)428
JEP 437: Structured Concurrency (Second Incubator)
JEP 437: Structured Concurrency (Second Incubator)437
JEP 453: Structured Concurrency (Preview)
JEP 453: Structured Concurrency (Preview)453
JEP 462: Structured Concurrency (Second Preview)
JEP 462: Structured Concurrency (Second Preview)462
JEP 480: Structured Concurrency (Third Preview)
JEP 480: Structured Concurrency (Third Preview)480
structured concurrency
JEP 429: Scoped Values (Incubator)
JEP 429: Scoped Values (Incubator)429
JEP 446: Scoped Values (Preview)
JEP 446: Scoped Values (Preview)446
JEP 464: Scoped Values (Second Preview)
JEP 464: Scoped Values (Second Preview)464
JEP 481: Scoped Values (Third Preview)
JEP 481: Scoped Values (Third Preview)481
JEP 487: Scoped Values (Fourth Preview)
JEP 487: Scoped Values (Fourth Preview)487
scoped values
Colors:
Incubator
Preview
Final