[英]Minimum Jetty version compatible with Java 11
与 Java11 兼容的最低码头版本是多少?
我目前正在运行在 Java7 上的 Jetty6.1.3。 我尝试简单地升级 jre 和相关依赖项,但它不起作用。
取决于“与 Java11 兼容”是什么意思?
“与 Java11 兼容”意味着很多事情,不仅是运行时,还涉及围绕 Java 9 引入的新功能(例如 JEP 238 和 MultiRelease JAR 文件)。
对于 Jetty 9.4.x 系列,字节码扫描在与 java 11 兼容之前经历了几次迭代。
module-info.class
内容(在 Java 8 运行时运行时)。META-INF/versions/*
内容。META-INF/versions/*
智能地在 Java 9+ 运行时进行字节码扫描。查看过去关于这些主题的答案
一如既往,保持 Jetty 和 JVM 为最新。 (尤其是如果您使用 SSL/TLS,因为该领域的情况变化非常快)
Eclipse Jetty web 站点表示 Jetty 10 和 11 至少是为 Java 11 建造的。
码头版本 | 小服务程序 API | 执照 | Java |
---|---|---|---|
码头 9.4.x | 3.1 | JavaEE 8javax.servlet.* |
Java 8 |
码头 10.0.x | 4.0 | JavaEE 8javax.servlet.* |
Java 11+ |
码头 11.0.x | 5.0 | 雅加达EE 9jakartaee.servlet.* |
Java 11+ |
由于从 Oracle Corp 过渡到 Eclipse Foundation( Java EE成为Jakarta EE ),以及随后将 package 名称从javax.*
更改为jakarta.*
,两个 Jetty 版本 10 和 11 在功能上是相同的。 这两个版本是并行开发的。 唯一显着的区别是 package 名称。
顺便说一句,Apache Tomcat也是这样做的,并行版本9和10.0,都支持8+。 它们分别使用javax和jakarta package 命名。
下一个版本Tomcat,版本 10.1.x 需要 Java 11+ 。 Tomcat 的下一个版本将支持Jakarta 10技术的下一个版本仍在开发中,例如Servlet 6 。 请参阅哪个版本? Tomcat 网站上的页面。
您可以通过转到 Java 11 上的 Jetty 10 进行直接升级。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.