Versiones de Java

Últimamente ha habido mucha confusión sobre Java y sus SDKs (Software Development Kits) disponibles. Es posible que hayas escuchado que el SDK de Java se llama JDK. Son lo mismo. Java SE (Standard Edition) es una especificación que se rige por el JCP (Java Community Process). Este proceso decide lo que entra (o sale) del JDK. Cualquiera puede implementar la especificación de Java. Si pasa el TCK (Test Compatibility Kit), se considera un JDK viable.

Para hacer las cosas más polémicas, Oracle pondrá fin a las actualizaciones públicas de Java 8 este mes. Esto no es algo fuera de lo común, ya que lo hace regularmente para las principales versiones de Java después de cinco años de disponibilidad pública. Relacionado: las actualizaciones públicas para Java 11 terminarán este mes de marzo cuando se lance Java 12.

Esto tiene que ver en gran medida con los contratos de soporte. No sé ustedes, pero yo nunca he pagado por un contrato de soporte de Java en mi carrera. Es cierto que he pasado la mayor parte de mis días de desarrollo como consultor independiente. Estoy dispuesto a apostar que la mayoría de ustedes tampoco han pagado por el soporte de Java. Mi opinión es que las personas que pagan por el soporte de Java están a cargo de empresas que construyeron su negocio en Java y no pueden migrar a la última versión. Necesitan soporte y correcciones de seguridad para las versiones anteriores porque no pueden actualizarlas.

¿Es Java 1.8 lo mismo que Java 8?

En JDK 8 y JRE 8, las cadenas de versión son 1.8 y 1.8. … Estos son algunos ejemplos en los que se utiliza la cadena de versión: java -version (entre otra información, devuelve la versión de java “1.8. 0” )

¿Es Java 1.8 lo mismo que Java 11?

Es una implementación de referencia de código abierto de la versión 11 de la plataforma Java SE. Java 11 se lanzó después de cuatro años de la publicación de Java 8. Java 11 viene con nuevas características para proporcionar más funcionalidad. A continuación se presentan las características que se añaden en los cuatro años y medio entre estas dos versiones.

leer  ¿Qué es y para qué sirve el dato primitivo Bool?

¿Por qué es tan popular Java 8?

Versión de soporte a largo plazo (LTS)

Una de las razones principales por las que Java 8 sigue siendo tan popular es que es una versión LTS (o Long-Term Support). … Desde un punto de vista comercial, ninguna organización debería plantearse poner en producción un sistema que dependa de una versión de Java que no tenga LTS.

Descarga de Java

Puede utilizar esta guía para obtener información práctica sobre cómo encontrar e instalar la última versión de Java, comprender las diferencias entre las distribuciones de Java (Adoptium, AdoptOpenJdk, OpenJDK, OracleJDK, etc.), así como obtener una visión general de las características del lenguaje Java, incluidas las versiones 8-17 de Java.

Las nuevas versiones de Java se suceden ahora cada 6 meses. Así, Java 18 está previsto para marzo de 2022, Java 19 para septiembre de 2022 y así sucesivamente. En el pasado, los ciclos de lanzamiento de Java eran mucho más largos, de hasta 3 a 5 años. Este gráfico lo demuestra:

Las versiones de Java anteriores a la 9 simplemente tenían un esquema de nomenclatura diferente. Así, Java 8 también puede llamarse 1.8, Java 5 puede llamarse 1.5, etc. Cuando emitías el comando ‘java -version’, con estas versiones obtenías una salida como esta:

Lo que significa simplemente Java 8. Con el cambio a versiones basadas en el tiempo con Java 9, el esquema de nomenclatura también cambió, y las versiones de Java ya no llevan el prefijo 1.x. Ahora el número de versión se ve así:

Java es especial en este sentido, ya que es extremadamente compatible con versiones anteriores. Esto significa que su programa Java 5 u 8 está garantizado para funcionar con una máquina virtual Java 8-17 – con algunas excepciones de las que no debe preocuparse por ahora.

¿Sigue siendo compatible Java 1.7?

Según la política de soporte de por vida para los productos Oracle Middleware, con Sustaining Support, los clientes seguirán recibiendo soporte técnico, acceso a My Oracle Support y actualizaciones de Java SE 7 publicadas hasta julio de 2022. Sustaining Support también significa que no habrá una nueva versión de actualización de Java SE 7 después de julio de 2022.

leer  ¿Qué son los patrones de diseño?

¿Cuál es la diferencia entre jdk1 7 y jdk1 8?

Java 7 incorpora la compatibilidad de la JVM con los lenguajes de tipado dinámico y la interferencia de tipos para la creación de instancias genéricas. Java 8 trae la característica más esperada para el lenguaje de programación llamada Expresiones Lambda, una nueva característica del lenguaje que permite a los usuarios codificar funciones locales como argumentos de métodos.

¿Es Java 11 compatible con versiones anteriores?

Debido a la famosa compatibilidad con versiones anteriores de Java, la mayor parte de la actualización de Java 8 a Java 11 es un simple bloqueo y abordaje.

Java 8

Tenga en cuenta que muchos otros proveedores siguen ofreciendo implementaciones de las especificaciones de Java, como se muestra en el diagrama de flujo siguiente. Algunos de estos proveedores venden planes de soporte, ya sea de forma opcional o como requisito para el uso de su producto. Nunca dé por sentado, lea siempre los requisitos detallados de cualquier distribución que obtenga.

Oracle JDK 8 (aka 1.8) ya no utiliza BCL (Binary Code License). A partir del 16 de abril de 2019, Oracle JDK 8 utiliza la licencia OTN (Oracle Technology Network), que requiere crear una cuenta de Oracle para descargar JDK 8 ¡y de pago!

Desde la actualización de java 8 al 16 de abril de 2019 8u221, todas las versiones y actualizaciones para (java 8,9,10,11,14) no tiene costo solo para uso personal y fines de desarrollo. Cualquier otro uso, necesita una licencia comercial.

“Oracle utilizará la NTFC para JDK 17 y versiones posteriores. Las versiones LTS, como el JDK 17, recibirán actualizaciones bajo esta licencia durante un año después del lanzamiento de la LTS posterior. Tras el período de licencia de uso gratuito, Oracle tiene previsto utilizar la licencia OTN, la misma que se utiliza actualmente para las versiones LTS de Java 8 y 11, para las actualizaciones posteriores. Las versiones que no sean LTS, como JDK 18, estarán disponibles durante toda su vida útil prevista de seis meses bajo la OTN”.

leer  ¿Qué es una interfaz gráfica y sus tipos?

¿Debo utilizar Java 8 o Java 11?

Java SE 8 sigue siendo el estándar de producción preferido en 2019. Aunque tanto la 9 como la 10 han sido lanzadas, ninguna de ellas ofrecerá LTS. Desde su primer lanzamiento en 1996, Java ha mantenido la reputación de ser uno de los lenguajes más seguros, fiables e independientes de la plataforma para la programación informática.

¿Puedo tener instalados Java 8 y Java 11?

O bien, suponga que está trabajando en varios proyectos, algunos de los cuales utilizan Java 8 y otros son proyectos nuevos que utilizan Java 11. Entonces, para poder trabajar en ambos proyectos, necesitarás instalar varias versiones del JDK en tu máquina y poder cambiar entre ellas.

¿Sigue siendo compatible Java 8?

Fin de las actualizaciones públicas de Java SE 8

Java SE 8 ha pasado por el proceso de finalización de las actualizaciones públicas de las versiones anteriores. Oracle seguirá proporcionando actualizaciones públicas gratuitas y actualizaciones automáticas de Java SE 8 de forma indefinida para usuarios personales, de desarrollo y otros usuarios a través de java.com.

Qué versión de java debo utilizar 2021

el cargador de aplicaciones Java. Esta herramienta es un intérprete y puede interpretar los archivos de clase generados por el compilador javac. Ahora se utiliza un único lanzador tanto para el desarrollo como para el despliegue. El antiguo lanzador de despliegue, jre, ya no viene con Sun JDK, y en su lugar ha sido sustituido por este nuevo cargador de java.

El JDK también viene con un Entorno de Ejecución de Java completo, normalmente llamado tiempo de ejecución privado, debido a que está separado del JRE “normal” y tiene contenidos extra. Consiste en una máquina virtual Java y todas las bibliotecas de clases presentes en el entorno de producción, así como bibliotecas adicionales sólo útiles para los desarrolladores, como las bibliotecas de internacionalización y las bibliotecas IDL.

Por avivcas