Java Is Still Free

Simon Ritter
Simon RitterJava Evangelist at Oracle
Java Is Still Free
Simon Ritter & Martijn Verburg
Terminology
• Java Standard Edition (Java SE)
• Specification of Java language syntax, JVM, core libraries
• Defined by JCP through umbrella JSR
• Java Development Kit (JDK)
• Binary implementation of Java SE (may be a superset)
• Tested using TCK to ensure conformance to Java SE specification
• OpenJDK
• Open source project
• Reference implementation of Java SE standard
• OpenJDK binary
• JDK built directly from OpenJDK source code
2
The Java Platform Today
3
Stable
Secure
Free
OpenJDK: New Release Model
• A new version of the JDK will be released every
six months
– March and September
– Started this year with JDK 10 and JDK 11
• OpenJDK development will be more agile
– Previous target was a release every two years
• Features will be included only when ready
– Targeted for a release when feature complete
4
Long Term Support Releases
• Long term support for all releases is not practical
– One Long Term Support (LTS) release every three years
• Oracle JDK 8 has been classified as an LTS release
– Oracle JDK 8 public updates
• Stop in January 2019 for commercial users
• Non-commercial users get updates until December 2020
• Next LTS release is JDK 11 (then JDK 17, 23, etc.)
• JDK 9 and JDK 10 are feature releases
• Updates for only six months
5
Which Oracle JDK Binary
• Traditional Oracle branded binary (java.oracle.com)
– Oracle Binary Code License (FoU restrictions)
• New Oracle OpenJDK binary (jdk.java.net)
– GPLv2 with CPE license (no restrictions)
– Security and bug fix updates only for six months
• Only until next JDK release
• Two scheduled updates
– No overlap of updates for previous version
6
Converged Binaries
Oracle JDK
OpenJDK
Java SE
JDK 10 and earlier
Java SE
OpenJDK
& Oracle JDK
JDK 11 and later
Converged Binaries (JDK 11)
• Some closed-source parts of the JDK will be open-
sourced
– Flight recorder
– Mission control
– Others
• Other closed-source parts will be removed
– Browser Plugin
– Java Web Start
– JavaFX
8
Backwards Compatibility
9
"Clean applications that just depend on java.se
should just work" - Oracle
JDK 9 and onwards
JDK 9: The Clean Up Starts
• JDK 9 was a significant change for Java
– Deprecated APIs were removed for the first time
• Six methods and one class
• JDK 10 removed 1 package, 6 classes, 9 methods and 1 field
– Redundant features eliminated
• jhat tool, JVM TI hprof agent
• Numerous deprecated GC options removed
– Significant command line changes
• JDK 9 removed 187 -XX flags
• JDK 10 removed 36 -XX flags
10
Housekeeping Will Continue
• More significant removals in JDK 11
– Applets, Browser Plugin, Web Start, JavaFX
– java.se.ee meta-module
• java.corba
• java.transaction
• java.activation
• java.xml.bind
• java.xml.ws
• java.xml.ws.annotation
• More in the future
– CMS GC and Nashorn deprecated, others?
11
Backwards Compatibility Not Guaranteed
• New versions of Java may include breaking
changes
– Anything for removal will be deprecated first
– Minimum of one release warning
• Could be only six months
12
Eliminating Confusion
• There will be an LTS release every three years
– This does NOT mean 3 years of free updates
• Oracle JDK (from JDK 11) can ONLY be used in production with a
commercial Java SE subscription
– The only free JDK 11 and later will be OpenJDK binaries
• Oracle JDK 8 can be used indefinitely for free
– But without any further security patches and bug fixes
• Oracle will only lead and contribute to each JDK for 6 months
– For all JDK: Feature and LTS
– Oracle will not backport updates
– Java community will need to do this for LTS
13
The Java Platform Today
14
Stable
Secure
Free
Choose two out of three
Azul's Zulu Java
Zulu Java
• Azul’s free binary distribution of OpenJDK
– Passes all TCK tests
• JDK 6, 7, 8, 9,10 and 11 (EA) available
• Wider platform support:
– Intel 64-bit Windows, Mac, Linux
– Intel 32-bit Windows and Linux
– ARM 32 and 64-bit
– PowerPC
16
www.azul.com/downloads/zulu
AdoptOpenJDK’s Java
AdoptOpenJDK Java
• AdoptOpenJDK’s free binary distribution of OpenJDK
– Some builds passes all TCK tests
• No commercial support, i.e. Free binaries only
• JDK 8, 9,10 and 11 (EA) available
• Widest platform support:
– Intel 64-bit Windows, Mac, Linux
– Intel 32-bit Windows and Linux
– ARM 32 and 64-bit
– PowerPC, AIX, Solaris, Linux s390, PowerPC LE et
Summary
Java Continues To Evolve
• Faster Java releases
– Feature release every 6 months
– Access to free updates is a consideration
– Java remains free
• Lots of ideas to improve Java
– Value types, fibres, syntax improvements
20
Questions?
1 of 21

Recommended

Java Support: What's changing by
Java Support:  What's changingJava Support:  What's changing
Java Support: What's changingSimon Ritter
4K views29 slides
JDK 9, 10, 11 and Beyond by
JDK 9, 10, 11 and BeyondJDK 9, 10, 11 and Beyond
JDK 9, 10, 11 and BeyondSimon Ritter
1.9K views55 slides
JDK 9, 10, 11 and Beyond by
JDK 9, 10, 11 and BeyondJDK 9, 10, 11 and Beyond
JDK 9, 10, 11 and BeyondSimon Ritter
840 views49 slides
JDK 9 Deep Dive by
JDK 9 Deep DiveJDK 9 Deep Dive
JDK 9 Deep DiveSimon Ritter
888 views138 slides
Moving Towards JDK 12 by
Moving Towards JDK 12Moving Towards JDK 12
Moving Towards JDK 12Simon Ritter
845 views53 slides
JDK 9: The Start of a New Future for Java by
JDK 9: The Start of a New Future for JavaJDK 9: The Start of a New Future for Java
JDK 9: The Start of a New Future for JavaSimon Ritter
669 views38 slides

More Related Content

What's hot

JDK 9: Mission Accomplished. What Next For Java? by
JDK 9: Mission Accomplished. What Next For Java?JDK 9: Mission Accomplished. What Next For Java?
JDK 9: Mission Accomplished. What Next For Java?Simon Ritter
852 views35 slides
It's a JDK- Jungle Out There – JDK 15 and OpenJDK 15 by
It's a JDK- Jungle Out There – JDK 15 and OpenJDK 15It's a JDK- Jungle Out There – JDK 15 and OpenJDK 15
It's a JDK- Jungle Out There – JDK 15 and OpenJDK 15Wolfgang Weigend
179 views73 slides
JDK-9: Modules and Java Linker by
JDK-9: Modules and Java LinkerJDK-9: Modules and Java Linker
JDK-9: Modules and Java LinkerBhanu Prakash Gopularam
1.7K views29 slides
The latest features coming to Java 12 by
The latest features coming to Java 12The latest features coming to Java 12
The latest features coming to Java 12NexSoftsys
385 views11 slides
Java 12 - New features in action by
Java 12 -   New features in actionJava 12 -   New features in action
Java 12 - New features in actionMarco Molteni
242 views36 slides
Is An Agile Standard Possible For Java? by
Is An Agile Standard Possible For Java?Is An Agile Standard Possible For Java?
Is An Agile Standard Possible For Java?Simon Ritter
3.2K views22 slides

What's hot(20)

JDK 9: Mission Accomplished. What Next For Java? by Simon Ritter
JDK 9: Mission Accomplished. What Next For Java?JDK 9: Mission Accomplished. What Next For Java?
JDK 9: Mission Accomplished. What Next For Java?
Simon Ritter852 views
It's a JDK- Jungle Out There – JDK 15 and OpenJDK 15 by Wolfgang Weigend
It's a JDK- Jungle Out There – JDK 15 and OpenJDK 15It's a JDK- Jungle Out There – JDK 15 and OpenJDK 15
It's a JDK- Jungle Out There – JDK 15 and OpenJDK 15
Wolfgang Weigend179 views
The latest features coming to Java 12 by NexSoftsys
The latest features coming to Java 12The latest features coming to Java 12
The latest features coming to Java 12
NexSoftsys385 views
Java 12 - New features in action by Marco Molteni
Java 12 -   New features in actionJava 12 -   New features in action
Java 12 - New features in action
Marco Molteni242 views
Is An Agile Standard Possible For Java? by Simon Ritter
Is An Agile Standard Possible For Java?Is An Agile Standard Possible For Java?
Is An Agile Standard Possible For Java?
Simon Ritter3.2K views
JDK 9: Big Changes To Make Java Smaller by Simon Ritter
JDK 9: Big Changes To Make Java SmallerJDK 9: Big Changes To Make Java Smaller
JDK 9: Big Changes To Make Java Smaller
Simon Ritter2.1K views
Modularity of the Java Platform (OSGi, Jigsaw and Penrose) by Martin Toshev
Modularity of the Java Platform (OSGi, Jigsaw and Penrose)Modularity of the Java Platform (OSGi, Jigsaw and Penrose)
Modularity of the Java Platform (OSGi, Jigsaw and Penrose)
Martin Toshev5.7K views
Illia shestakov - The Future of Java JDK #9 by Anna Shymchenko
Illia shestakov - The Future of Java JDK #9Illia shestakov - The Future of Java JDK #9
Illia shestakov - The Future of Java JDK #9
Anna Shymchenko833 views
JDK 9: Big Changes To Make Java Smaller by Simon Ritter
JDK 9: Big Changes To Make Java SmallerJDK 9: Big Changes To Make Java Smaller
JDK 9: Big Changes To Make Java Smaller
Simon Ritter700 views
Modularization With Project Jigsaw in JDK 9 by Simon Ritter
Modularization With Project Jigsaw in JDK 9Modularization With Project Jigsaw in JDK 9
Modularization With Project Jigsaw in JDK 9
Simon Ritter6.1K views
55 New Features in JDK 9 by Simon Ritter
55 New Features in JDK 955 New Features in JDK 9
55 New Features in JDK 9
Simon Ritter26.7K views

Similar to Java Is Still Free

Whats new in Java 9,10,11,12 by
Whats new in Java 9,10,11,12Whats new in Java 9,10,11,12
Whats new in Java 9,10,11,12Rory Preddy
2K views23 slides
Explaining the new Java release and licensing models by
Explaining the new Java release and licensing modelsExplaining the new Java release and licensing models
Explaining the new Java release and licensing modelsMark West
950 views29 slides
2018 10-oracle-java-licensing-update-support-changes by
2018 10-oracle-java-licensing-update-support-changes2018 10-oracle-java-licensing-update-support-changes
2018 10-oracle-java-licensing-update-support-changesNeil Brown
91 views17 slides
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16" by
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"GlobalLogic Ukraine
767 views116 slides
How to Choose a JDK by
How to Choose a JDKHow to Choose a JDK
How to Choose a JDKSimon Ritter
231 views28 slides

Similar to Java Is Still Free(20)

Whats new in Java 9,10,11,12 by Rory Preddy
Whats new in Java 9,10,11,12Whats new in Java 9,10,11,12
Whats new in Java 9,10,11,12
Rory Preddy2K views
Explaining the new Java release and licensing models by Mark West
Explaining the new Java release and licensing modelsExplaining the new Java release and licensing models
Explaining the new Java release and licensing models
Mark West950 views
2018 10-oracle-java-licensing-update-support-changes by Neil Brown
2018 10-oracle-java-licensing-update-support-changes2018 10-oracle-java-licensing-update-support-changes
2018 10-oracle-java-licensing-update-support-changes
Neil Brown91 views
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16" by GlobalLogic Ukraine
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
JDK 8 and JDK 8 Updates in OpenJDK by Wolfgang Weigend
JDK 8 and JDK 8 Updates in OpenJDKJDK 8 and JDK 8 Updates in OpenJDK
JDK 8 and JDK 8 Updates in OpenJDK
Wolfgang Weigend2.5K views
OpenJDK-Zulu talk at JEEConf'14 by Ivan Krylov
OpenJDK-Zulu talk at JEEConf'14OpenJDK-Zulu talk at JEEConf'14
OpenJDK-Zulu talk at JEEConf'14
Ivan Krylov702 views
Developing Java Microservices Fast with Open Liberty by YK Chang
Developing Java Microservices Fast with Open LibertyDeveloping Java Microservices Fast with Open Liberty
Developing Java Microservices Fast with Open Liberty
YK Chang41 views
New thing in JDK10 even that scala-er should know by なおき きしだ
New thing in JDK10 even that scala-er should knowNew thing in JDK10 even that scala-er should know
New thing in JDK10 even that scala-er should know
なおき きしだ5.6K views
JDK9 Features (Summary, 31/Jul/2015) #JJUG by Yuji Kubota
JDK9 Features (Summary, 31/Jul/2015) #JJUGJDK9 Features (Summary, 31/Jul/2015) #JJUG
JDK9 Features (Summary, 31/Jul/2015) #JJUG
Yuji Kubota14.2K views
Open Source In The World Of Java by Jamie Coleman
Open Source In The World Of JavaOpen Source In The World Of Java
Open Source In The World Of Java
Jamie Coleman75 views

More from Simon Ritter

Cloud Native Compiler by
Cloud Native CompilerCloud Native Compiler
Cloud Native CompilerSimon Ritter
49 views47 slides
Java On CRaC by
Java On CRaCJava On CRaC
Java On CRaCSimon Ritter
459 views35 slides
The Art of Java Type Patterns by
The Art of Java Type PatternsThe Art of Java Type Patterns
The Art of Java Type PatternsSimon Ritter
209 views43 slides
Modern Java Workshop by
Modern Java WorkshopModern Java Workshop
Modern Java WorkshopSimon Ritter
252 views68 slides
Java performance monitoring by
Java performance monitoringJava performance monitoring
Java performance monitoringSimon Ritter
606 views52 slides
Modern Java Workshop by
Modern Java WorkshopModern Java Workshop
Modern Java WorkshopSimon Ritter
739 views142 slides

More from Simon Ritter(18)

The Art of Java Type Patterns by Simon Ritter
The Art of Java Type PatternsThe Art of Java Type Patterns
The Art of Java Type Patterns
Simon Ritter209 views
Modern Java Workshop by Simon Ritter
Modern Java WorkshopModern Java Workshop
Modern Java Workshop
Simon Ritter252 views
Java performance monitoring by Simon Ritter
Java performance monitoringJava performance monitoring
Java performance monitoring
Simon Ritter606 views
Modern Java Workshop by Simon Ritter
Modern Java WorkshopModern Java Workshop
Modern Java Workshop
Simon Ritter739 views
Getting the Most From Modern Java by Simon Ritter
Getting the Most From Modern JavaGetting the Most From Modern Java
Getting the Most From Modern Java
Simon Ritter423 views
Building a Better JVM by Simon Ritter
Building a Better JVMBuilding a Better JVM
Building a Better JVM
Simon Ritter109 views
JDK 14 Lots of New Features by Simon Ritter
JDK 14 Lots of New FeaturesJDK 14 Lots of New Features
JDK 14 Lots of New Features
Simon Ritter510 views
The Latest in Enterprise JavaBeans Technology by Simon Ritter
The Latest in Enterprise JavaBeans TechnologyThe Latest in Enterprise JavaBeans Technology
The Latest in Enterprise JavaBeans Technology
Simon Ritter1.2K views
Developing Enterprise Applications Using Java Technology by Simon Ritter
Developing Enterprise Applications Using Java TechnologyDeveloping Enterprise Applications Using Java Technology
Developing Enterprise Applications Using Java Technology
Simon Ritter966 views
Building a Brain with Raspberry Pi and Zulu Embedded JVM by Simon Ritter
Building a Brain with Raspberry Pi and Zulu Embedded JVMBuilding a Brain with Raspberry Pi and Zulu Embedded JVM
Building a Brain with Raspberry Pi and Zulu Embedded JVM
Simon Ritter1.9K views
It's Java, Jim, but not as we know it by Simon Ritter
It's Java, Jim, but not as we know itIt's Java, Jim, but not as we know it
It's Java, Jim, but not as we know it
Simon Ritter789 views
Whats New For Developers In JDK 9 by Simon Ritter
Whats New For Developers In JDK 9Whats New For Developers In JDK 9
Whats New For Developers In JDK 9
Simon Ritter1K views
JDK 9: 55 New Features by Simon Ritter
JDK 9: 55 New FeaturesJDK 9: 55 New Features
JDK 9: 55 New Features
Simon Ritter428 views
Streams: The Good, The Bad And The Ugly by Simon Ritter
Streams: The Good, The Bad And The UglyStreams: The Good, The Bad And The Ugly
Streams: The Good, The Bad And The Ugly
Simon Ritter637 views

Recently uploaded

DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko... by
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...Deltares
11 views23 slides
DSD-INT 2023 Dam break simulation in Derna (Libya) using HydroMT_SFINCS - Prida by
DSD-INT 2023 Dam break simulation in Derna (Libya) using HydroMT_SFINCS - PridaDSD-INT 2023 Dam break simulation in Derna (Libya) using HydroMT_SFINCS - Prida
DSD-INT 2023 Dam break simulation in Derna (Libya) using HydroMT_SFINCS - PridaDeltares
18 views9 slides
DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J... by
DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J...DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J...
DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J...Deltares
9 views24 slides
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx by
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptxanimuscrm
13 views19 slides
Neo4j y GenAI by
Neo4j y GenAI Neo4j y GenAI
Neo4j y GenAI Neo4j
42 views41 slides
SAP FOR CONTRACT MANUFACTURING.pdf by
SAP FOR CONTRACT MANUFACTURING.pdfSAP FOR CONTRACT MANUFACTURING.pdf
SAP FOR CONTRACT MANUFACTURING.pdfVirendra Rai, PMP
11 views2 slides

Recently uploaded(20)

DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko... by Deltares
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...
DSD-INT 2023 Simulation of Coastal Hydrodynamics and Water Quality in Hong Ko...
Deltares11 views
DSD-INT 2023 Dam break simulation in Derna (Libya) using HydroMT_SFINCS - Prida by Deltares
DSD-INT 2023 Dam break simulation in Derna (Libya) using HydroMT_SFINCS - PridaDSD-INT 2023 Dam break simulation in Derna (Libya) using HydroMT_SFINCS - Prida
DSD-INT 2023 Dam break simulation in Derna (Libya) using HydroMT_SFINCS - Prida
Deltares18 views
DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J... by Deltares
DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J...DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J...
DSD-INT 2023 3D hydrodynamic modelling of microplastic transport in lakes - J...
Deltares9 views
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx by animuscrm
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
2023-November-Schneider Electric-Meetup-BCN Admin Group.pptx
animuscrm13 views
Neo4j y GenAI by Neo4j
Neo4j y GenAI Neo4j y GenAI
Neo4j y GenAI
Neo4j42 views
SUGCON ANZ Presentation V2.1 Final.pptx by Jack Spektor
SUGCON ANZ Presentation V2.1 Final.pptxSUGCON ANZ Presentation V2.1 Final.pptx
SUGCON ANZ Presentation V2.1 Final.pptx
Jack Spektor22 views
Software evolution understanding: Automatic extraction of software identifier... by Ra'Fat Al-Msie'deen
Software evolution understanding: Automatic extraction of software identifier...Software evolution understanding: Automatic extraction of software identifier...
Software evolution understanding: Automatic extraction of software identifier...
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ... by Donato Onofri
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...
Unmasking the Dark Art of Vectored Exception Handling: Bypassing XDR and EDR ...
Donato Onofri711 views
What Can Employee Monitoring Software Do?​ by wAnywhere
What Can Employee Monitoring Software Do?​What Can Employee Monitoring Software Do?​
What Can Employee Monitoring Software Do?​
wAnywhere21 views
El Arte de lo Possible by Neo4j
El Arte de lo PossibleEl Arte de lo Possible
El Arte de lo Possible
Neo4j38 views
DSD-INT 2023 Delft3D FM Suite 2024.01 1D2D - Beta testing programme - Geertsema by Deltares
DSD-INT 2023 Delft3D FM Suite 2024.01 1D2D - Beta testing programme - GeertsemaDSD-INT 2023 Delft3D FM Suite 2024.01 1D2D - Beta testing programme - Geertsema
DSD-INT 2023 Delft3D FM Suite 2024.01 1D2D - Beta testing programme - Geertsema
Deltares17 views
A first look at MariaDB 11.x features and ideas on how to use them by Federico Razzoli
A first look at MariaDB 11.x features and ideas on how to use themA first look at MariaDB 11.x features and ideas on how to use them
A first look at MariaDB 11.x features and ideas on how to use them
Federico Razzoli45 views
Copilot Prompting Toolkit_All Resources.pdf by Riccardo Zamana
Copilot Prompting Toolkit_All Resources.pdfCopilot Prompting Toolkit_All Resources.pdf
Copilot Prompting Toolkit_All Resources.pdf
Riccardo Zamana6 views
Software testing company in India.pptx by SakshiPatel82
Software testing company in India.pptxSoftware testing company in India.pptx
Software testing company in India.pptx
SakshiPatel827 views
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)... by Deltares
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...
Deltares9 views
DSD-INT 2023 Baseline studies for Strategic Coastal protection for Long Islan... by Deltares
DSD-INT 2023 Baseline studies for Strategic Coastal protection for Long Islan...DSD-INT 2023 Baseline studies for Strategic Coastal protection for Long Islan...
DSD-INT 2023 Baseline studies for Strategic Coastal protection for Long Islan...
Deltares11 views
Citi TechTalk Session 2: Kafka Deep Dive by confluent
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Dive
confluent17 views

Java Is Still Free

  • 1. Java Is Still Free Simon Ritter & Martijn Verburg
  • 2. Terminology • Java Standard Edition (Java SE) • Specification of Java language syntax, JVM, core libraries • Defined by JCP through umbrella JSR • Java Development Kit (JDK) • Binary implementation of Java SE (may be a superset) • Tested using TCK to ensure conformance to Java SE specification • OpenJDK • Open source project • Reference implementation of Java SE standard • OpenJDK binary • JDK built directly from OpenJDK source code 2
  • 3. The Java Platform Today 3 Stable Secure Free
  • 4. OpenJDK: New Release Model • A new version of the JDK will be released every six months – March and September – Started this year with JDK 10 and JDK 11 • OpenJDK development will be more agile – Previous target was a release every two years • Features will be included only when ready – Targeted for a release when feature complete 4
  • 5. Long Term Support Releases • Long term support for all releases is not practical – One Long Term Support (LTS) release every three years • Oracle JDK 8 has been classified as an LTS release – Oracle JDK 8 public updates • Stop in January 2019 for commercial users • Non-commercial users get updates until December 2020 • Next LTS release is JDK 11 (then JDK 17, 23, etc.) • JDK 9 and JDK 10 are feature releases • Updates for only six months 5
  • 6. Which Oracle JDK Binary • Traditional Oracle branded binary (java.oracle.com) – Oracle Binary Code License (FoU restrictions) • New Oracle OpenJDK binary (jdk.java.net) – GPLv2 with CPE license (no restrictions) – Security and bug fix updates only for six months • Only until next JDK release • Two scheduled updates – No overlap of updates for previous version 6
  • 7. Converged Binaries Oracle JDK OpenJDK Java SE JDK 10 and earlier Java SE OpenJDK & Oracle JDK JDK 11 and later
  • 8. Converged Binaries (JDK 11) • Some closed-source parts of the JDK will be open- sourced – Flight recorder – Mission control – Others • Other closed-source parts will be removed – Browser Plugin – Java Web Start – JavaFX 8
  • 9. Backwards Compatibility 9 "Clean applications that just depend on java.se should just work" - Oracle JDK 9 and onwards
  • 10. JDK 9: The Clean Up Starts • JDK 9 was a significant change for Java – Deprecated APIs were removed for the first time • Six methods and one class • JDK 10 removed 1 package, 6 classes, 9 methods and 1 field – Redundant features eliminated • jhat tool, JVM TI hprof agent • Numerous deprecated GC options removed – Significant command line changes • JDK 9 removed 187 -XX flags • JDK 10 removed 36 -XX flags 10
  • 11. Housekeeping Will Continue • More significant removals in JDK 11 – Applets, Browser Plugin, Web Start, JavaFX – java.se.ee meta-module • java.corba • java.transaction • java.activation • java.xml.bind • java.xml.ws • java.xml.ws.annotation • More in the future – CMS GC and Nashorn deprecated, others? 11
  • 12. Backwards Compatibility Not Guaranteed • New versions of Java may include breaking changes – Anything for removal will be deprecated first – Minimum of one release warning • Could be only six months 12
  • 13. Eliminating Confusion • There will be an LTS release every three years – This does NOT mean 3 years of free updates • Oracle JDK (from JDK 11) can ONLY be used in production with a commercial Java SE subscription – The only free JDK 11 and later will be OpenJDK binaries • Oracle JDK 8 can be used indefinitely for free – But without any further security patches and bug fixes • Oracle will only lead and contribute to each JDK for 6 months – For all JDK: Feature and LTS – Oracle will not backport updates – Java community will need to do this for LTS 13
  • 14. The Java Platform Today 14 Stable Secure Free Choose two out of three
  • 16. Zulu Java • Azul’s free binary distribution of OpenJDK – Passes all TCK tests • JDK 6, 7, 8, 9,10 and 11 (EA) available • Wider platform support: – Intel 64-bit Windows, Mac, Linux – Intel 32-bit Windows and Linux – ARM 32 and 64-bit – PowerPC 16 www.azul.com/downloads/zulu
  • 18. AdoptOpenJDK Java • AdoptOpenJDK’s free binary distribution of OpenJDK – Some builds passes all TCK tests • No commercial support, i.e. Free binaries only • JDK 8, 9,10 and 11 (EA) available • Widest platform support: – Intel 64-bit Windows, Mac, Linux – Intel 32-bit Windows and Linux – ARM 32 and 64-bit – PowerPC, AIX, Solaris, Linux s390, PowerPC LE et
  • 20. Java Continues To Evolve • Faster Java releases – Feature release every 6 months – Access to free updates is a consideration – Java remains free • Lots of ideas to improve Java – Value types, fibres, syntax improvements 20

Editor's Notes

  1. FoU = Field of Use. restriction prevented people using Java in embedded applications without buying a license. CPE = Classpath Exception. Eliminates the problem of the GPL license being viral, which would require you to make the source code for your application available.
  2. Late 2018 probably means JDK 11, which comes out in September. The idea of eliminating differences is so that the two binaries from Oracle (reference last slide) will be functionaly the same.