[英]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.