7. Karakun DevHub_
@HendrikEbbersdev.karakun.com
The current state
⢠Starting with Java 11 all the new changes in the
Java ecosystem will aďŹect developers
⢠Mostly no-one cared about Java 9 or 10
⢠With 11 mostly all developers need to take action
8. Karakun DevHub_
@HendrikEbbersdev.karakun.com
The current state
⢠Before we have a deeper look at the new changes
we should have a look at the history of Java
⢠Some of the "new" stuďŹ is already part of Java
since years
⢠Some decisions done for a decade aďŹect us now
10. Karakun DevHub_
@HendrikEbbersdev.karakun.com
Let's go back to the 90th
⢠"Oak" (Object Application Kernel) / "The Green
Project" was developed in 1992
⢠This project evolved to Java in 1995
⢠The Duke was already theâ¨
mascot for theâ¨
Green Project
13. Karakun DevHub_
@HendrikEbbersdev.karakun.com
The last years
⢠Oracle managed to provideâ¨
major updates of Java
⢠Continued to evolve Java by the JCP
⢠Not everything is perfect but muchâ¨
better than it was expected
16. Karakun DevHub_
@HendrikEbbersdev.karakun.com
The standard APIs
⢠Java Class Library (JCL) is a set of dynamically
loadable libraries
⢠Will be called at runtime
⢠Almost entirely written in Java (some JNI calls to
hardware & OS)
17. Karakun DevHub_
@HendrikEbbersdev.karakun.com
The standard APIs
⢠Since Java 9 the standard APIs are separated in
several modules java.se
java.sql.rowset
java.sql
java.xml
java.base
java.loggingjava.instrument java.datatransfer java.scripting
java.prefs
java.desktop
java.xml.crypto
java.compiler
java.rmi java.naming
java.security.sasl
java.management java.security.jgss
19. Karakun DevHub_
@HendrikEbbersdev.karakun.com
The (evil) private APIs
⢠Some rules about private APIs
⢠Do not use anything besides the java.* package
⢠Swing and Graphics2D is located in the javax.*
package
⢠JavaFX is located in the javafx.* package
21. Karakun DevHub_
@HendrikEbbersdev.karakun.com
The tools
⢠Basic tools like the "java" or "javac" command are
part of each JDK distribution
⢠Oracle added several tools to its Java distribution
that are not part of OpenJDK
⢠All this tools were developed closed source at
Oracle
27. Karakun DevHub_
@HendrikEbbersdev.karakun.com
The classical Java releases
⢠Up until Java 8 we had a ďŹexible release train for
Java
⢠A new major version was released "when it's
done"
⢠This ended in delays and a a big bundle of new
features per release
28. Karakun DevHub_
@HendrikEbbersdev.karakun.com
The classical Java releases
⢠A version was available for several years
⢠Normally a version received updates even after
the next version was released
⢠Commercial LTS support was provided by Oracle
for legacy projects
31. Karakun DevHub_
@HendrikEbbersdev.karakun.com
The new release train
⢠Last year Oracle announced new release train
⢠More ďŹexible with ďŹxed release dates
⢠A feature will be released "when it's done"
⢠Shorter lifetime of Java versions
34. Karakun DevHub_
@HendrikEbbersdev.karakun.com
The new release train @ Oracle
⢠Starting with Java 11 Oracle provides 2 Java builds
⢠Oracle JDK is the commercial distribution
⢠Oracle OpenJDK builds still provided under GPL
with classpath exception
36. Karakun DevHub_
@HendrikEbbersdev.karakun.com
The new release train
⢠Next to the new timeline the new release model
added some additional points
⢠Deprecated code was removed from Java
⢠@Deprecated has additional information
39. Karakun DevHub_
@HendrikEbbersdev.karakun.com
The new release train
⢠Since Java will become more ďŹexibel the users of
Java need to become more ďŹexible, too
⢠Based on the changes dependencies and
application code need to be checked for a new
version
⢠Updates should be done more often
50. Karakun DevHub_
@HendrikEbbersdev.karakun.com
⢠Vendors work in private forks for
versions with commercial support
⢠Security ďŹxes will be merged in
the fork
⢠Customer speciďŹc changes will be
added to the fork
migrated
OpenJDK workďŹow
52. Karakun DevHub_
@HendrikEbbersdev.karakun.com
⢠All companies have the same workďŹow but the
concrete versions will diďŹer more an more
⢠Maybe securityâ¨
ďŹxes can be â¨
handled in an openâ¨
branch in future
OpenJDK workďŹow
61. Karakun DevHub_
@HendrikEbbersdev.karakun.com
Commercial support
⢠All this support models are made for Java on the
server
⢠This works ďŹne for classic mainframe applications
⢠Several models work ďŹne for cloud computing
⢠No price model is made for Java on the client
62. Karakun DevHub_
@HendrikEbbersdev.karakun.com
Oracle commercial support
User client machines Monthly price per user / client machine
1-999 $2.50
1,000-2,999 $2.00
3.000-9.999 $1.75
10.000-19.999 $1.50
20.000-49.999 $1.25
50.000+ Oracle must be contacted
70. Karakun DevHub_
@HendrikEbbersdev.karakun.com
Amazon Corretto
⢠Java 8 builds will be supported till 2023 (LTS)
⢠Java 11 builds will be supported till 2024 (LTS)
⢠LTS build will contain security ďŹxes
⢠A new version will be released each quarter
⢠No commercial support options
85. Karakun DevHub_
@HendrikEbbersdev.karakun.com
Karakun supports you
⢠Karakun tries to recreate WebStart as an open source
product
⢠We oďŹer trainings and workshops for Java migration
(8-11), the new release train
⢠We will inform you about all aspects of this topic at
https://dev.karakun.com