Spring Boot 3.0 M1 發布,正式棄用 Java 8,最低要求 Java 17。。。


一直以來,Java8都是Java社區心頭的痛。因為它代表着以穩定性為主的企業管理層,與擁抱變化為主的底層碼農層之間的、愛的魔力拉鋸戰。

 

不生!少生!成為各大廠心照不宣的選擇。

現在,這種平衡或將打破。因為Java屆的霸主框架SpringBoot,選擇了最小支持的Java lts版本,就是最新的Java17。

堅信Java8成為永恆的同學,該用尿滋醒一下了。

 

怎么辦?

到底用不用新的版本,這其實並沒有什么意義。有需求才有變化,為了追求升級而升級,那是腦殘才干的事。當廣大從業者,越來越了解到自己是一個工具人的時候,就會放棄這些無意義的操作。

只有兩種情況,無意義才會變成有意義。

第一,是卷到極致的時候,不痛不癢的版本升級就會進入你的任務列表。第二,是落后社區太多的時候,羞愧感加上功能的驅使會讓你選擇升級。不過這也並不是絕對,因為如果你是管理層,臟活自然會有人干,你也不會有這么大的動力。

哪些改變?

還是先回到正題,看一下SpringBoot3都有哪些改變吧。

首先。

再次強調一下,SpringBoot3將強力合體Java17,采用全新的Spring6版本,Maven支持也提高到了3.5、Gradle提高到了7.3。版本管理器默認也換成了grandle,grandle的下載速度,國內要肉痛一下了。

再次。

雖然我們現在使用JavaEE的功能越來越少,但很多巨無霸商業企業還是依然堅守着打下的江山。自從JavaEE改名為Jakarta EE,Jakarta EE9版本迎來了更大的改動,連javax這種包名都給改了(2019及以后)。SpringBoot3一琢磨,假如不追上的話,恐怕后面很快就要出SpringBoot4了,所以Jakarta EE的版本,也切成了9。

Jakarta是印尼首都雅加達,與斯巴達只差兩字的距離。Jakarta EE 9 的版本應由 Eclipse Glassfish,Apache TomEE,Wildfly,Oracle WebLogic,JBoss 和 IBM Websphere Liberty 實施,並使用 Jakarta EE 的標志。

這通常沒什么影響,因為新時代的互聯網人,使用JavaEE的功能越來越少,就連JavaSE都嫌臃腫,所以這對很多人並沒有什么影響。我建議你如無必要,永遠不要使用它,因為里面全是坑哈哈。

其次。

移除了一些老掉牙的東西,比如 Apache ActiveMQ、Atomikos、EhCache 2、Hazelcast 3等。Apache ActiveMQ這種老掉牙的東西,實在是不推薦新項目使用了,高並發下它坑死了老多人;Hazelcast也在Redis的進攻下節節敗退,雖然用上了先進的Raft也頹勢盡顯。

這些不入流的東西們,最好的存在方式就是各種stater,而不是放在core包里面。

同樣被移除的還有下面這些:

  • EhCache 3
  • H2’s web console
  • Hibernate’s metrics
  • Infinispan
  • Jolokia
  • Pooled JMS
  • REST Assured

這些名詞背后,充滿了商業的腐朽味道,以及銷售的嘴臉和被忽悠的懵逼的老板們。

怕不怕?

現在SpringBoot3還是M1版本,Spring Boot團隊將每兩個月發布一個新的里程碑版本,所以M2版本預計將在3月24日發布。

其實,大家都不怕軟件不更新,也不怕經過實踐過的更新,最怕項目出生在這種不生不死的間隔時間。選新的吧,功能不穩定,要背鍋;選舊的吧,心里不痛快,未來總有一天還得升級。

所以大多數時候,時間就在這猶猶豫豫中流逝了。

保持系統的純潔性,是一個非常好的習慣。哪怕官方為你貼心的提供了很多擴展功能,也不要隨隨便便去使用,否則你將嘗到背叛的味道。

當然,一個普通程序員職業生涯,被定格在35歲的年代,在新時代農民工論調的大背景下,你並不需要為其他的階級去着想,除非它影響到了你的面包。

附上最新的3.0地址:https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-3.0-Release-Notes

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM