Explicación de las licencias de Oracle Java: abordar la complejidad, los costos y las auditorías

Las organizaciones que utilizan Java enfrentan un aumento en las tarifas de licencia después de que Oracle introdujo el precio de suscripción para Java SE.

El analista Forrester ha escrito anteriormente que el cambio a lo que Oracle llama Java SE Universal Subscription promete eliminar la carga del seguimiento de las instalaciones. Sin embargo, como señala Forrester, el costo puede ser elevado.

“Necesitará identificar todas las instalaciones de Java y, si es posible, el acuerdo asociado. Querrá asegurarse de imponer la supervisión de las nuevas instalaciones de Java. Ahora, tanto o posiblemente más que nunca, preste atención y mantenga buenas prácticas de gestión de activos de software de Oracle. Hacerlo podría evitarle una gran sorpresa en materia de tarifas de licencia no presupuestadas”, dijo la firma analista.

Los departamentos de TI necesitan utilizar herramientas de gestión de activos de TI para comprobar que el software Java que se ejecuta en sus organizaciones tenga la licencia correcta.

En 2023, Gartner informó que en el período de 12 meses previo al 31 de diciembre de 2022, el 52% de las interacciones relacionadas con el cumplimiento y la auditoría del software de Oracle se centraron en Oracle Java. Esta es una preocupación constante porque Java tiene casi 30 años y está integrado en aplicaciones de TI empresarial.

¿Dónde se utiliza Java?

Como parte de un estudio reciente sobre Java, el proveedor de plataformas de observabilidad New Relic informó que Oracle fue el proveedor más popular del Java Developer’s Kit (JDK) en 2020. Estimó que Oracle representaba casi las tres cuartas partes del mercado de Java.

Sin embargo, señaló que desde entonces se ha producido un notable alejamiento de Oracle Java, tras la introducción de una licencia más restrictiva, que entró en vigor con Oracle Java 11.

Si bien Oracle Java 17 se considera más abierto que Java 11, los datos de la empresa de herramientas de observabilidad New Relic muestran que ha habido una disminución constante año tras año (YoY) desde entonces. Si bien los datos de New Relic muestran que Oracle JDK fue la versión de Java más implementada en 2022 (34%), cayó al 29% en 2023 y, a partir de 2024, ahora representa el 21% de Java implementado. Según New Relic, esto representa una disminución del 28% en un año.

Si bien hay muchas razones por las que las organizaciones han abandonado Java, lo que ha resultado en menos implementaciones de Oracle JDK, muchos consideran que el costo de las licencias de software es un factor importante que contribuye.

¿Cuáles son las diferencias entre las licencias de Oracle Java?

Oracle ofrece tres licencias diferentes para Java además de una serie de productos Java que requieren licencias de Oracle, como Java SE y Oracle Java SDK, el conjunto de herramientas de desarrollo de software para crear aplicaciones Java. También está el JRE, el entorno de ejecución de Java. Oracle ofrece OpenJDK, una versión de código abierto, que se publica bajo la Licencia Pública General GNU v2 de código abierto, lo que complica aún más las auditorías de Java.

Todas las diferentes permutaciones de productos Java que una organización puede haber implementado complican la gestión de activos de TI, especialmente teniendo en cuenta que Java se ha utilizado en las organizaciones durante casi 30 años.

Al analizar los desafíos, Simon Ritter, autor de Migración OpenJDK para principiantesedición especial de Azul, dice: “Para Oracle JDK, hay tres licencias diferentes”.

La primera de ellas es la licencia de código binario (BCL) de Oracle, que es la que heredó Oracle cuando adquirió Sun Microsystems. Según Ritter, esto está dirigido básicamente al uso integrado y ofrece un uso gratuito. “No es necesario adquirir una suscripción de soporte”, afirma.

Oracle afirma que las versiones de Java SE publicadas antes del 16 de abril de 2019 son las únicas versiones con licencia BCL. Ya no se utiliza para nuevos lanzamientos.

La segunda licencia es el acuerdo de licencia de Oracle Technology Network, que requiere una suscripción a Java para uso empresarial. Esto puede resultar extremadamente costoso ya que Oracle basa el pago de la licencia en el número de personas empleadas en la organización.

“Todo el asunto de las licencias es realmente bastante complicado”, dice Ritter, “porque Oracle introdujo una tercera licencia, que se llama licencia de términos y condiciones sin cargo (NFTC)”. Ritter afirma que esto permite a las organizaciones utilizar Java de forma gratuita para aplicaciones empresariales internas. Sin embargo, “el inconveniente es que sólo es válido durante tres años”, advierte Ritter.

En su sitio web, Oracle afirma que la NFTC cubre las versiones de seis meses de Java 22 y posteriores. Las versiones de Java 21 están cubiertas hasta 2026. Java 18 es compatible con la NFTC hasta enero de 2024, mientras que el soporte gratuito solo está disponible en Java 17 si las organizaciones tienen versiones de Oracle JDK anteriores a la versión 17.0.13.

Esta nueva tercera opción, según Ritter, significa que un año después del próximo lanzamiento de soporte a largo plazo de Oracle JDK, la licencia volverá al acuerdo de licencia de Oracle Technology Network, que requiere que los clientes compren una suscripción a Java SE.

“Es complicado, pero esencialmente significa que si quieres evitar tener que comprar la suscripción, tienes que actualizar Java cada dos años, cuando Oracle lanza una nueva versión de soporte a largo plazo”, dice Ritter.

¿Por qué seguir con Java?

Java 21 se lanzó en septiembre de 2023. New Relic señala que esta versión ofrece mejoras notables en subprocesos virtuales y bibliotecas actualizadas, así como avances en la sintaxis. Según New Relic, estas mejoras ponen a Java a la par de muchos lenguajes más modernos.

También está el hecho de que el entorno de ejecución de Java proporciona una compilación del código fuente justo a tiempo. Esto significa que la optimización se produce sólo cuando se ejecuta la aplicación Java. La ventaja de este enfoque es que una aplicación Java puede aprovechar fácilmente los últimos avances en tecnología de procesadores.

Los últimos datos recopilados por New Relic, para su 2024 Estado del ecosistema Java El informe encontró que en los seis meses posteriores al lanzamiento de Java 21, el 1,4% de las aplicaciones monitoreadas por New Relic lo estaban usando. Esto representa un aumento del 380% en la adopción en comparación con cuando se introdujo Java 17.

New Relic señaló que la tasa de adopción de Java 17 superó con creces lo que vio el mundo de los desarrolladores cuando se introdujo Java 11. Aproximadamente una décima parte (9%) de las aplicaciones utilizaban Java 17 en producción en 2023, y ahora el 35% de las aplicaciones utilizan Java 17, lo que representa una tasa de crecimiento de casi el 300% en un año. Según New Relic, Java 11 tardó años en alcanzar este nivel.

¿Cuáles son las alternativas a Oracle Java?

Azul es una empresa que vende una alternativa al Oracle JDK. Otros incluyen JDK de Amazon, Microsoft, Red Hat y SAP, entre otros.

Estos tienden a ofrecer lo que se conoce como certificación Technology Compatibility Kit (TCK), que garantiza el cumplimiento de Java SE, como explica Ritter: “Si pasa de Oracle a una distribución OpenJDK diferente, su aplicación se ejecutará exactamente de la misma manera. como antes”.

Exit mobile version