java spring spring-boot java-9

¿Necesito Spring 5 para Java 9?



spring boot 2 (2)

Primavera

En el blog oficial de Spring , anunciaron que Spring 4.2 soportaría Java 7 y 8 (no cambió en 4.3), y también dijeron que Spring 5 admitiría Java 9.

Está implícito que Spring 4 no admitirá Java 9.

Pero depende de lo que estés haciendo: en este blog , el escritor está probando Java9 en la primavera 4 y dijo:

Sin embargo, antes de comenzar, un descargo de responsabilidad rápido: demostraré la migración de las aplicaciones Spring 4.x / Spring Boot 1.x a Java 9. Por lo que he escuchado, habrá poco o ningún soporte formal para Java 9. Hasta ahora, no he encontrado muchos problemas una vez que tengo las aplicaciones en ejecución, sin embargo, ya que estas son principalmente pruebas de concepto, no han sido minuciosamente investigadas.

Debido a que "no es compatible" solo significa que no está seguro del comportamiento. Si está utilizando algo que haya cambiado en Java9, debería considerar migrar (a menos que pueda probarlo primero).

Arranque de primavera

Spring boot 1.x no es compatible con Java9. Si desea usarlo, debe migrar a Spring Boot 2.x.

Spring 5 se promociona como "con soporte para JDK 9", mientras que la documentación para Spring 4.3.13 establece que es compatible con Java 8 (así como también con 6 y 7) .

¿Esto significa que tengo que actualizar a Spring 5 antes de poder

  • ejecutar mi aplicación en JRE 9?
  • compilar mi aplicación usando JDK 9?

Real

Por todo eso, si está planeando compilar su código creado con Spring 4.x con Java9, debería funcionar correctamente en función de la compatibilidad con la palabra de nuevo de Java9 que, sin embargo, ha estado en duda para ciertas implementaciones y la respuesta precisa sería dependiente. en su uso de la primavera a medida que avanza y prueba cosas.

Teorías

La versión 5.0.0-RC1 de Spring framework fue anunciada con el soporte para Java 8+ . El anuncio incluyó el tema declarado para el desarrollo perteneciente a Java9 también:

Listo para JDK 9 : completamente alineado con JDK 9 en tiempo de ejecución, en el classpath y en la ruta del módulo (en este último caso, como "módulos automáticos" basados ​​en nombre de archivo por el momento).

Este candidato está actualmente disponible desde el 1 de noviembre de 2017 y se puede usar desde

repositories { maven { url ''http://repo.spring.io/libs-milestone'' } } compile "org.springframework.integration:spring-integration-core:5.0.0.RC1"

Las buenas noticias ciertas para buscar en esa nota serían:

Esperamos GA en un par de semanas, justo a tiempo para Spring Boot 2.0 GA .

Con respecto a Spring Boot con Java 9 , los requisitos son claros, por lo que 2.x vs 1.x se clasifican por separado:

Spring Boot 2 es la primera versión compatible con Java 9 (Java 8 también es compatible) . Si está utilizando 1.5 y desea usar Java 9, debe actualizar a 2.0 ya que no tenemos planes de admitir Java 9 en Spring Boot 1.5.x.

Para estar al tanto de las actualizaciones, puede seguir el rastreador de temas de Java 9 y el 2.0 en progreso.

Así que el mundo ideal sería, migrando para hacer uso de Spring 5.x / Spring Boot 2.x y Java 9 para obtener soporte sobre las últimas características y cualquier incompatibilidad que se encuentre más allá.