Llegamos a ustedes gracias a:



Noticias

Oracle prepara a los desarrolladores para el upgrade Java 9

[06/03/2017] En preparación para el planeado lanzamiento en julio de Java 9, Oracle ha publicado orientación para trasladar las aplicaciones hacia la siguiente upgrade, la cual cuenta con grandes cambios a través de la modularización.

El recién lanzado JDK (Java Development Kit) 9 Migration Guide señala que cada actualización trae consigo incompatibilidades binarias, de fuente y de comportamiento con las versiones anteriores. "La modularización de Java SE Platform trae muchos beneficios, pero también muchos cambios, afirmó Oracle. "El código que utiliza solo las API oficiales de Java SE Platform y soportaba APIs específicas de JDK debería seguir funcionando sin ningún cambio. Pero el código que utiliza ciertas funciones o APIs internas de JDK podría no funcionar o podría dar resultados diferentes, advirtió la empresa.

Para prepararse para la migración, Oracle sugiere tener la compilación de acceso inicial, ejecutar un programa antes de recompilar, actualizar las bibliotecas de terceros, compilar una aplicación y ejecutar el análisis estático de jdeps en el código. Al ejecutar sus aplicaciones, a los desarrolladores se les advierte acerca de las opciones de máquinas virtuales no reconocidas desde JVM. Oracle también recomienda observar las pruebas para asegurarse que el comportamiento de las aplicaciones es el mismo que el que era con JDK 8.

La compilación mediante el uso del compilador JDK 9 podría fallar por varias razones, según Oracle. La mayoría de las API internas en el JDK son inaccesibles de forma predeterminada, por lo que los desarrolladores podrían tener errores en el tiempo de ejecución -IllegalAccessErrors- lo que indica que una aplicación o bibliotecas dependen de las API internas. La herramienta Java Dependency Analysis identificará las dependencias. "Puede que vea más advertencias de rechazo que antes, afirmó Oracle. "Si ve advertencias de rechazo con retiro, debe ocuparse de ellas pronto.

En cuanto a la recolección de elementos no utilizados, el colector G1 está especificado como el colector en las configuraciones de servidor de 32 y 64 bits. "Usar un recolector de pausa baja como el G1 proporcionaría una mejor experiencia general, para la mayoría de los usuarios, que un recolector orientado al rendimiento como el Parallel GC, que era el predeterminado anterior, afirmó Oracle. "Debería observar los parámetros de sus máquinas virtuales para ver si algo debe ser ajustado.

JDK 9 retira JavaDB, que era un cambio de nombre de la base de datos Apache Derby, y el agente hprof TI JVM. Este agente fue escrito como código de demostración de la JVM Tool Interface y no pretende ser una herramienta de producción. Las características útiles del agente han sido reemplazadas por mejores herramientas en el JDK, afirmó Oracle. JHAT, una herramienta de visualización experimental y no soportada, también fue retirada.

El cliente de máquinas virtuales para Windows de 32 bits fue dejado de lado, ahora sólo se ofrece un servidor de máquinas virtuales. "JDK 8 y las versiones anteriores ofrecían un cliente JVM y un servidor JVM para Windows de 32 bits; la opción predeterminada era el JVM cliente, afirmó Oracle. "JDK 9 ofrece solo el servidor JVM. El servidor JVM tiene un mejor desempeño, aunque podría necesitar de más recursos. Esto ayuda a reducir la complejidad. Oracle también retiró algunas funcionalidades específicas para Mac OS, como el motor AppleScript.