Java Runtime Environment (JRE) and Java Development Kit (JDK) version numbers follow a strict policy that Oracle has changed few months ago.
Knowing the rules behind the version numbers let us understand which are the benefits and the risks to migrate our environment to newest versions.
First of all, two Oracle definitions:
- Limited Edition : release that includes new functionalities and/or bug fixes not related to security problems. Limited Edition releases have always even numbers.
- Critical Path Update (CPU): release that includes only security bug fixes. No new functionality. CPU releases have always odd numbers.
So JRE/JDK 7 release 11 (in short 7u11 where u = update) is a CPU release while JRE/JDK 6 release 38 (6u38) has introduced new functionality because it is a Limited Edition.
In general it’s worth to migrate to a new CPU update (to secure our application) as soon it is available. Limited Edition releases can (should) be tested with more time before adoption.
Since last December, Oracle release plan was quite stable but in the last months a significant amount of security vulnerabilities have been discovered and fixed. The traditional numbering scheme needed to be updated: more odd numbers were needed.
So for the future, the numbering scheme is the following:
- Limited Edition: use 20 as numbering step (from 20 to 40 to 60..) instead of 2
- CPU: use 5 as numbering step (+1 if final number is even) like : 45 (first CPU after 40), 51 and 55.
The odd numbers not used (41, 43, 47.. in the above example) will be used, if necessary, for urgent security fixes.
More details here.
Last Java 6 releases:
- 6u38 (Limited Edition)
Last Java 7 releases:
- 7u10 (Limited Edition)
Note: 7u19 not released