AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當(dāng)前位置:首頁 > 科技  > 軟件

Java EE更名Jakarta EE對(duì)程序開發(fā)影響,你知道嗎?

來源: 責(zé)編: 時(shí)間:2024-05-16 09:10:12 148觀看
導(dǎo)讀一、前言很多Java程序員在使用新版本的Spring6或者springboot3版本的時(shí)候,發(fā)現(xiàn)了一些叫jakarta的包。我在閱讀開源工作流引擎camunda源代碼的時(shí)候,也發(fā)展了大量jakarta的工程包。比如:camunda的webapps編譯工程就提供了2

一、前言

很多Java程序員在使用新版本的Spring6或者springboot3版本的時(shí)候,發(fā)現(xiàn)了一些叫jakarta的包。我在閱讀開源工作流引擎camunda源代碼的時(shí)候,也發(fā)展了大量jakarta的工程包。1fH28資訊網(wǎng)——每日最新資訊28at.com

1fH28資訊網(wǎng)——每日最新資訊28at.com

比如:camunda的webapps編譯工程就提供了2種方式j(luò)avax和jakarta1fH28資訊網(wǎng)——每日最新資訊28at.com

* `assembly` - Java sources and tests for the Camunda web application based on `javax` namespace.* `assembly-jakarta` - Java sources and tests for the Camunda web application based on `jakarta` namespace.* This module is created from the `assembly` module via code transformation.1fH28資訊網(wǎng)——每日最新資訊28at.com

網(wǎng)上也有好多同學(xué)使用Tomcat時(shí)遇到到Jakarta.servlet與javax.servlet包沖突的問題。1fH28資訊網(wǎng)——每日最新資訊28at.com

Tomcat10中解決eclipse內(nèi)部Jakarta.servlet與javax.servlet不兼容問題方法:1fH28資訊網(wǎng)——每日最新資訊28at.com

https://blog.csdn.net/mmmm0584/article/details/1151618651fH28資訊網(wǎng)——每日最新資訊28at.com

引起以上問題的原因是:Java EE更名為Jakarta EE,javax命名空間變?yōu)閖akarta,javax包名前綴變?yōu)閖akarta。1fH28資訊網(wǎng)——每日最新資訊28at.com

二、Java EE為什么更名Jakarta EE

2009年4月20日,甲骨文(Oracle)公司和Sun公司今天共同宣布了最終協(xié)議,甲骨文公司將以74億美元收購(gòu)SUN公司。當(dāng)時(shí),Sun Microsystems被譽(yù)為世界上最具前瞻性的IT公司之一,有能力以開放軟件及硬件為結(jié)合,進(jìn)行全面統(tǒng)一的系統(tǒng),給客戶帶來最大的價(jià)值。Oracle收購(gòu)Sun Microsystems表明,它希望借助Sun Microsystems的關(guān)鍵軟件和技術(shù)資源,將自身現(xiàn)有的專業(yè)的管理體系,硬件解決方案,及應(yīng)用程序發(fā)展技術(shù)集成在同一個(gè)平臺(tái)上,從而創(chuàng)建一個(gè)更加完善的企業(yè)增值產(chǎn)品和服務(wù)。1fH28資訊網(wǎng)——每日最新資訊28at.com

2018年,Oracle(甲骨文)決定將Java EE移交給開源組織Eclipse基金會(huì),但甲骨文不允許開源組織用Java的名號(hào),于是Eclipse選出了 "Jakarta EE" 和"Enterprise Profile"兩個(gè)名字,最終前者勝出。1fH28資訊網(wǎng)——每日最新資訊28at.com

Eclipse基金會(huì)高管Mike Milinkovich表示,7000多人參與了Java EE的更名投票,64%的票數(shù)支持改為Jakarta EE,另有35.6%的票數(shù)支持Enterprise Profile。1fH28資訊網(wǎng)——每日最新資訊28at.com

Oracle將Java EE(Java SE還自己保留)交給開源組織,Eclipse基金會(huì)接手。但Oracle不允許開源組織使用Java名號(hào),所以Jakarta EE名稱于2018.02.26應(yīng)運(yùn)而生。Oracle收購(gòu)了Sun公司,涉及到商標(biāo)和版權(quán)原因,Javax改名為Jakarta迫不得已。1fH28資訊網(wǎng)——每日最新資訊28at.com

從Java EE到Jakarta EE,企業(yè)版Java、JDK的發(fā)展歷程,參考:1fH28資訊網(wǎng)——每日最新資訊28at.com

https://cloud.tencent.com/developer/article/18471101fH28資訊網(wǎng)——每日最新資訊28at.com

三、Java EE更名Jakarta對(duì)軟件影響

Spring Framework作為Java領(lǐng)域最為流行的框架,有非常龐大的用戶群體和項(xiàng)目應(yīng)用,Java開源框架里絕對(duì)的TOP1。我們首先看看Java EE更名Jakarta對(duì)Spring Framework的影響。1fH28資訊網(wǎng)——每日最新資訊28at.com

Spring Framework 6正式發(fā)布,攜JDK 17&Jakarta EE開啟新篇章,Spring Framework為何一躍將JDK的baseline從JDK 8提到JDK 17,以及廢棄javax,啟用全新的jakarta命名空間。Spring Framework 6基于JDK 17構(gòu)建。換句話講,若想使用Spring Framework 6那么你的JDK環(huán)境最低要求JDK 17。1fH28資訊網(wǎng)——每日最新資訊28at.com

javax命名空間其實(shí)早已成為過去式,畢竟現(xiàn)在已快2024年了。這次Spring團(tuán)隊(duì)也是跟著JDK一起,順勢(shì)的完全摒棄掉了javax命名空間,擁抱Jakarta EE。1fH28資訊網(wǎng)——每日最新資訊28at.com

另外,之前有些內(nèi)置進(jìn)JDK里面的Java EE注解,現(xiàn)在也換“包名”啦,如具有代表性的:JSR-330的@Inject、JSR 250的@PostConstruct、@Predestroy以及及其常用的@Resource注解,Resource包名變成了jakarta.annotation.Resource。1fH28資訊網(wǎng)——每日最新資訊28at.com

1fH28資訊網(wǎng)——每日最新資訊28at.com

從Jakarta EE 9開始,便使用了全新的jakarta.*命名空間。本次建議使用從Jakarta EE 10起步。對(duì)應(yīng)的技術(shù)主要有:1fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta Servlet 6.01fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta Servlet JSP JSTL 3.01fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta Validation 3.01fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta WebSocket 2.11fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta Persistence 3.11fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta JMS 3.11fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta JSON 2.11fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta JSON Bind 3.01fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta Activation 2.11fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta Mail 2.11fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta Transaction 2.01fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta WS RS 3.11fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta XML SOAP 3.01fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta XML WS 4.01fH28資訊網(wǎng)——每日最新資訊28at.com

比如:開發(fā)web程序最常用的servlet,從maven中央倉庫檢索,發(fā)現(xiàn):1fH28資訊網(wǎng)——每日最新資訊28at.com

servlet4.0.1以前的版本是javax,從4.0.2版本以后均遷移到了jakarta1fH28資訊網(wǎng)——每日最新資訊28at.com

<dependency>1fH28資訊網(wǎng)——每日最新資訊28at.com

<groupId>javax.servlet</groupId>1fH28資訊網(wǎng)——每日最新資訊28at.com

<artifactId>javax.servlet-api</artifactId>1fH28資訊網(wǎng)——每日最新資訊28at.com

<version>4.0.1</version>1fH28資訊網(wǎng)——每日最新資訊28at.com

</dependency>1fH28資訊網(wǎng)——每日最新資訊28at.com

servlet-api從4.0.2版本—6.0.0版本均變成了jakarta.servlet-api1fH28資訊網(wǎng)——每日最新資訊28at.com

<dependency>1fH28資訊網(wǎng)——每日最新資訊28at.com

<groupId>jakarta.servlet</groupId>1fH28資訊網(wǎng)——每日最新資訊28at.com

<artifactId>jakarta.servlet-api</artifactId>1fH28資訊網(wǎng)——每日最新資訊28at.com

<version>4.0.2</version>1fH28資訊網(wǎng)——每日最新資訊28at.com

</dependency>1fH28資訊網(wǎng)——每日最新資訊28at.com

參考文章:https://fangshixiang.blog.csdn.net/article/details/1280562071fH28資訊網(wǎng)——每日最新資訊28at.com

四、Jakarta EE發(fā)展現(xiàn)狀

打開Jakarta官方網(wǎng)站:https://jakarta.ee/1fH28資訊網(wǎng)——每日最新資訊28at.com

1fH28資訊網(wǎng)——每日最新資訊28at.com

使用 ENTERPRISE JAVA 為云原生架構(gòu)構(gòu)建開源生態(tài)系統(tǒng),最新版本:Jakarta EE 10 現(xiàn)已上市。1fH28資訊網(wǎng)——每日最新資訊28at.com

1fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta EE 平臺(tái)和配置文件規(guī)范是各個(gè)規(guī)范的總括規(guī)范。Jakarta EE 平臺(tái)包括大多數(shù)單獨(dú)的規(guī)范,而 Profile 規(guī)范包括用于開發(fā) Web 平臺(tái)和微服務(wù)架構(gòu)的單個(gè)規(guī)范。1fH28資訊網(wǎng)——每日最新資訊28at.com

1fH28資訊網(wǎng)——每日最新資訊28at.com

我們看看Jakarta的生態(tài),包括 Fujitsu、IBM、Oracle、Red Hat 和 Tomittribe 在內(nèi)的全球企業(yè) Java 生態(tài)系統(tǒng)領(lǐng)導(dǎo)者正在共同努力,推動(dòng) Java EE 和 Jakarta EE 的發(fā)展,以支持將關(guān)鍵任務(wù)應(yīng)用程序和工作負(fù)載遷移到云中。另外中國(guó)開發(fā)應(yīng)用中間件的企業(yè)也在其中,包括普元、寶蘭德、東方通、金蝶、華宇、亞信等公司。1fH28資訊網(wǎng)——每日最新資訊28at.com

1fH28資訊網(wǎng)——每日最新資訊28at.com

未來Java項(xiàng)目升級(jí)JDK后,可能會(huì)涉及到到代碼的升級(jí),官方出了一篇文章:如何升級(jí)到 Jakarta EE 10 和 GlassFish 7 – 這比您想象的要容易得多。https://omnifish.ee/2023/05/06/how-to-upgrade-to-jakarta-ee-10-and-glassfish-7/1fH28資訊網(wǎng)——每日最新資訊28at.com

從舊版本的 Jakarta EE 或 Java EE 升級(jí)到 Jakarta EE 10 可能有點(diǎn)棘手,可能需要額外注意細(xì)節(jié)。您可能會(huì)遇到的主要事情之一是確保現(xiàn)有代碼和庫兼容。某些庫可能仍在使用該軟件包,這可能會(huì)導(dǎo)致在嘗試在 Jakarta EE 服務(wù)器(如 Eclipse GlassFish 7)上運(yùn)行應(yīng)用程序時(shí)發(fā)生沖突。您可能還會(huì)遇到一些在 Jakarta EE 10 中刪除的已棄用 API 的問題。javax1fH28資訊網(wǎng)——每日最新資訊28at.com

但別擔(dān)心,我們已經(jīng)為您準(zhǔn)備好了!在這篇文章和本系列的未來文章中,我們將解釋您需要了解的所有信息,以成功且?guī)缀趿⒓瓷?jí)到 Jakarta EE 10。1fH28資訊網(wǎng)——每日最新資訊28at.com

升級(jí)到 Jakarta EE 10 或 GlassFish 7 的挑戰(zhàn)分為以下 3 大類:1fH28資訊網(wǎng)——每日最新資訊28at.com

  • 更改包前綴需要更新對(duì)舊包的所有引用javaxjakarta
  • 過時(shí)的批注可能需要替換為替代批注
  • 重寫使用已刪除 API 的代碼,這些 API 沒有直接的替代方案

以上所有內(nèi)容不僅適用于您的代碼庫,也適用于您的應(yīng)用程序使用的所有依賴項(xiàng)。許多流行的庫已經(jīng)有與 Jakarta EE 10 兼容的新版本,因此更新它們就足夠了。但有些圖書館可能不支持 Jakarta EE 10,需要進(jìn)行特殊調(diào)整。幸運(yùn)的是,有一些工具可以在源代碼級(jí)別和二進(jìn)制(字節(jié)碼)級(jí)別上自動(dòng)執(zhí)行此操作。1fH28資訊網(wǎng)——每日最新資訊28at.com

幸運(yùn)的是,許多挑戰(zhàn)都可以使用免費(fèi)和開源工具(如 Openrewrite、WindUp 和 Eclipse Transformer)自動(dòng)完成。Openrewrite 是一個(gè)強(qiáng)大的工具,可以自動(dòng)更改應(yīng)用程序的源代碼,例如使用新前綴更新對(duì)舊包的所有引用。1fH28資訊網(wǎng)——每日最新資訊28at.com

以下是雅加達(dá)Jakarta 官方調(diào)查問卷的統(tǒng)計(jì),雅加達(dá)Jakarta的應(yīng)用情況。1fH28資訊網(wǎng)——每日最新資訊28at.com

1fH28資訊網(wǎng)——每日最新資訊28at.com

Jakarta EE是用于構(gòu)建云原生應(yīng)用程序的頂級(jí)框架的基礎(chǔ)。1fH28資訊網(wǎng)——每日最新資訊28at.com

雅加達(dá)Jakarta 構(gòu)建云原生應(yīng)用程序的EE使用率從2021年的47%增加到2022年的53%,而Spring/Spring Boot和MicroProfile的使用量有所下降。1fH28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.tebozhan.com/showinfo-26-88389-0.htmlJava EE更名Jakarta EE對(duì)程序開發(fā)影響,你知道嗎?

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: JavaScript如何優(yōu)雅地告別Cannot read properties of undefined,Optional類體驗(yàn)

下一篇: 一招MAX降低10倍,現(xiàn)在它是我的了

標(biāo)簽:
  • 熱門焦點(diǎn)
Top