Java 10 - Versión de versión basada en el tiempo
JEP 322 − Control de versiones de lanzamiento basado en el tiempo
Desde Java 10 en adelante, Oracle ha introducido un modelo estricto de control de versiones basado en el tiempo para las versiones de Java. Ahora Java tendrá una versión principal cada seis meses. Java 10 se lanzó en marzo de 2018 y, a partir de ahora, se planea lanzar todas las versiones principales en los meses de marzo y septiembre de los próximos años. Los lanzamientos se clasifican además en tres grandes categorías.
-
Lanzamiento de funciones − Una versión de función contiene funciones específicas del idioma, funciones de JVM, API nuevas/mejoradas, eliminación/desuso de API. El tiempo de estos lanzamientos de funciones es fijo y no hay restricciones sobre las funciones que se incluirán en un lanzamiento en particular. Si una función en desarrollo no forma parte de la última versión, se planificará para la próxima versión.
-
Versión de actualización − Un lanzamiento de actualización incluye corrección de errores, corrección de problemas de seguridad, corrección de regresión, etc. Cada lanzamiento de actualización está planificado por trimestre en los meses de enero, abril, julio y octubre. Cada lanzamiento de función recibirá dos lanzamientos de actualización antes de que se anuncie el próximo lanzamiento de función.
-
Lanzamiento de soporte a largo plazo (LTS) − El lanzamiento de soporte a largo plazo se anunciará cada tres años a partir de septiembre de 2018. Oracle proporcionará soporte y actualizaciones para este lanzamiento durante los próximos tres años. Esta versión es principalmente para empresas que utilizan Java en implementaciones de producción.
Formato de versión
Una versión ahora sigue el siguiente formato.
$FEATURE.$INTERIM.$UPDATE.$PATCH
donde
-
$FUNCIÓN − Este número indica el lanzamiento de funciones principales y se incrementará en 1 después de cada lanzamiento de funciones. Para Java 10 es 10.
-
$INTERIM − Este número indica cualquier versión sin funciones ni actualizaciones que contenga correcciones de errores y mejoras. Esta versión no tiene ningún cambio incompatible, ninguna eliminación de API o cambio a la API estándar. Un lanzamiento de función tendrá este contador como 0.
-
$ACTUALIZAR − Este número indica el lanzamiento de la actualización realizado después de un lanzamiento de características. Por ejemplo, una versión de actualización de Java en abril de 2018 es JDK 10.0.1 y para julio de 2018 es JDK 10.0.2 y así sucesivamente.
-
$PARCHE − Este número denota cualquier liberación de emergencia incrementada solo en caso de que se deba promover un problema crítico de forma emergente.
Ejemplo
El siguiente programa muestra los detalles de versiones de JAVA 10.
public class Tester { public static void main(String[] args) { Runtime.Version version = Runtime.version(); System.out.printf(" feature: %s%n interim: %s%n update: %s%n patch: %s%n", version.feature(), version.interim(), version.update(), version.patch()); } }
Salida
Imprimirá el siguiente resultado.
feature: 10 interim: 0 update: 2 patch: 0
Java