Oracle® ha publicado Java 11 y ha cambiado los términos de la licencia de Java. A partir de ahora se requiere una licencia comercial para su uso. ¿Cómo afecta este cambio a la relación entre Java 11 y Mirth Connect? ¿Tenemos que hacer algún cambio en nuestras integraciones?
Contenido
- La nueva licencia de Java.
- Mirth Connect, Java 11 y OpenJDK.
- ¿Cómo afecta Java 11 a mis integraciones con Mirth Connect?.
- Conclusiones.
La nueva licencia de Java®
Todos hemos instalado y usado Java desde hace muchos años, pero hace poco algo ha cambiado y nos puede afectar mucho. Aquí te damos toda la información que necesitas para poder seguir usando y desarrollando con Java sin problemas.
El pasado septiembre de 2018, Oracle® publicó Java 11. Se trata de una versión importante que reemplazará a Java 8 en muchos entornos como la versión usada por defecto. Esta nueva versión tiene dos características muy importantes:
- Es una versión LTS (soporte de larga duración), al igual que Java 8. Esto quiere decir que, dentro de poco, será la versión que encontraremos por todas partes.
- Requiere una licencia comercial para su uso en producción. Oracle ha cambiado la licencia de Java y es aquí donde empiezan las dudas.
¿Esto quiere decir que tendré que pagar para usar Java?
Sí y no, que no cunda el pánico y veamos qué podemos hacer.
Los sabores de Java 11
Hasta Java 11, Oracle ofrecía su JDK (Java Development Kit) de forma gratuita. Además, ofrecía la posibilidad de contratar una licencia comercial para este mismo JDK.
Pero esto ha cambiado a partir de Java 11. Podremos seguir usando Oracle JDK para desarrollar y para hacer tests, pero NO lo podremos usar en producción si no contamos con una licencia comercial.
Por suerte existen dos tipos de JDK:
- Oracle JDK: este es el JDK comercial de Oracle.
- OpenJDK: este JDK es la distribución open source y se puede usar sin limitaciones para desarrollar, probar y en producción.
OpenJDK al rescate
Por lo tanto, si no disponemos de licencia comercial, tendremos que usar alguna de las distribuciones de OpenJDK. Existen muchas distribuciones de OpenJDK, tres de las principales son:
- OpenJDK HotSpot: es la distribución open source de la propia Oracle.
- OpenJDK OpenJ9: es la distribución de Eclipse, este OpenJDK está diseñado para un uso reducido de memoria y un arranque más rápido.
- Azul Zulu: es la distribución de OpenJDK de Azul Systems.
En la web AdoptJDK podemos encontrar tanto la versión de Oracle como la de Eclipse. Aunque existen muchas otras distribuciones de OpenJDK, cada una con su modelo de actualizaciones, soporte y respaldadas por diferentes organizaciones.
Mirth Connect, Java 11 y OpenJDK
Mirth Connect está desarrollado en Java y, por tanto, necesita tener Java instalado para funcionar. Además, la versión 3.7 de Mirth es la primera en soportar Java 11. Entonces, podemos preguntarnos qué cambios trae Java 11 que afecten a Mirth Connect.
Pues bien, Java 11 trae dos cambios importantes, uno tecnológico y uno legal que debemos conocer bien:
- En primer lugar, se retira Java Web Start (JNLP): este es el mecanismo que se usaba para lanzar el Administrator de Mirth Connect. Así que, a partir de Java 11, no estará disponible este método y tendremos que usar el Administrator Launcher (que no depende de JNLP).
- Y, en segundo lugar, ahora se requiere una licencia comercial para usar Oracle Java 11 en producción. Por tanto, si no tenemos una licencia comercial, deberemos usar OpenJDK para desplegar Mirth Connect.
Afortunadamente, Mirth Connect 3.7 soporta tanto Oracle JDK como OpenJDK, así que podremos usar cualquiera de los dos sin problema.
Además, OpenJDK y Oracle JDK son funcionalmente idénticos a partir de Java 11, por lo que no tendremos que preocuparnos por problemas de compatibilidad.
¿Cómo afecta Java 11 a mis integraciones con Mirth Connect?
Podemos encontrarnos con diferentes escenarios en función de nuestra situación de partida:
Sistema con Mirth Connect 3.7 o posterior
Mirth Connect 3.7.0 es la primera versión en ser compatible con Java 11, pero también es compatible con Java 8. Así que podemos tomar cualquiera de estas opciones:
- Seguir usando Java 8:
- Si disponemos de una licencia comercial, podemos seguir usando Oracle Java 8 y seguir recibiendo actualizaciones hasta marzo de 2025 con el soporte extendido.
- En cambio, si no disponemos de una licencia comercial, es posible seguir utilizando Oracle Java 8, pero no recibiremos actualizaciones a partir de enero de 2019. Por tanto, lo recomendable será cambiar nuestros sistemas en producción a OpenJDK. Así tendremos garantizadas las actualizaciones hasta, por lo menos, septiembre de 2023.
- Cambiar a Java 11:
- Si disponemos de una licencia comercial, podemos usar Oracle JDK en producción con soporte y actualizaciones hasta septiembre de 2023 (con soporte extendido hasta 2026).
- Por el contrario, si no disponemos de una licencia comercial, NO podremos usar Oracle JDK en producción. Si lo hacemos, nos arriesgamos a recibir una llamada de Oracle pidiéndonos algo más que explicaciones. En este caso, lo mejor será usar OpenJDK en alguna de sus versiones.
Versiones anteriores de Mirth Connect
Las versiones anteriores a la 3.7 no son compatibles con Java 11, por lo que deberemos usar otra versión compatible, preferiblemente OpenJDK 8.
Puedes saber más sobre la compatibilidad entre las versiones de Mirth Connect y de Java en nuestro artículo sobre los requisitos de sistema de Mirth Connect.
Cronograma para Java 8 y Java 11
Para que podamos ir programando nuestras próximas migraciones, podemos encontrar los hitos principales en la vida de Java 8 y 11 en Oracle Java SE Support Roadmap.
Conclusión
En resumen, el cambio de licencia de Oracle con Java 11 es algo a tener en cuenta, ya que puede hacer que estemos incumpliendo la licencia sin saberlo. Incumplir la licencia es grave porque nos puede ocasionar problemas legales, que son más difíciles de solucionar que los de código.
Sin embargo, la solución es sencilla y pasa por tomar una de las dos opciones disponibles:
- Contratar una licencia comercial a Oracle.
- Usar OpenJDK.
Aunque, en muchos casos, la decisión no depende de nosotros mismos sino de nuestros clientes y empleadores, creemos que es importante conocer la realidad de las herramientas que usamos a diario, como Java. Sobre todo, si conocerla nos puede evitar problemas.
Oracle y Java son marcas registradas de Oracle y/o sus afiliados. Otros nombres pueden ser marcas de sus respectivos dueños.
Deja una respuesta