最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springboot3.x中Jakarta包無法引入的問題

 更新時(shí)間:2024年02月18日 09:19:03   作者:reui  
最近想將一些項(xiàng)目升級(jí)到springboot3.x和java17的時(shí)候,發(fā)現(xiàn)項(xiàng)目依賴中有Jakarta的包,但是代碼標(biāo)紅提示沒有相關(guān)的類,本文就來介紹一下解決方法,感興趣的可以了解一下

最近想將一些項(xiàng)目升級(jí)到springboot3.x和java17的時(shí)候,發(fā)現(xiàn)項(xiàng)目依賴中有Jakarta的包,但是代碼標(biāo)紅提示沒有相關(guān)的類,特此記錄一下排查問題和最終解決問題的思路方法

一、發(fā)現(xiàn)問題

因?yàn)橹坝袆?chuàng)建過 springboot3.x + java17 的項(xiàng)目,也運(yùn)行正常。所以最近想著將一些舊項(xiàng)目也做一下update,但是不幸運(yùn)的是,當(dāng)改了一通代碼后編譯的時(shí)候,提示 "程序包jakarta.annotation不存在"。

下圖看到 Resource 注解是標(biāo)紅提示沒有找到。

之前也知道Java EE要遷移到Jakarta EE,也對(duì)整個(gè)項(xiàng)目的相關(guān)代碼進(jìn)行了修改,但是為什么還會(huì)提示有異常呢?

二、分析問題

1.依賴引入

首先考慮的肯定是對(duì)應(yīng)的包是否已經(jīng)引入進(jìn)來,于是查看了項(xiàng)目的依賴

依賴?yán)锩婷髅魇怯械模瑸槭裁催€是提示沒有這個(gè)注解類呢?

于是 mvn clean、ide清緩存索引等等一波操作后,仍是無果....

2.發(fā)現(xiàn)問題點(diǎn)

后來看了一下項(xiàng)目配置,看了一下這里面的依賴,好家伙,作用域scope居然是test...

那為什么作用域會(huì)是測試階段的呢?

3.查看依賴關(guān)系

那就看看到底是從哪里引入進(jìn)來的

通過依賴分析工具,查到原來是從 spring-boot-starter-test 引入進(jìn)來的,而項(xiàng)目中這個(gè)依賴的作用域確實(shí)是 test

那問題來了,為什么之前的項(xiàng)目就可以的呢?不過這個(gè) jakarta 包不應(yīng)該是從測試依賴導(dǎo)入進(jìn)來的?。?/p>

4.對(duì)比分析

于是對(duì)比了一下之前運(yùn)行正常的項(xiàng)目,看看這個(gè) jakarta 包是如何正常引入進(jìn)來運(yùn)行的。

好家伙,原來是從 spring-boot-starter-web 引入進(jìn)來的,同時(shí)也看看其他的幾個(gè) jakarta 包。

真的不看不知道,平常真沒怎么注意到這里面的依賴學(xué)問,因?yàn)樽詮挠昧?springboot 的 starter ,就真的很少關(guān)注到這些問題。

三、解決問題

要調(diào)整的這個(gè)項(xiàng)目里面因?yàn)槭且虺蒵ar包給其他項(xiàng)目使用,所以我就不想引入太多依賴包,就沒有引入 starter,只是單純的引入了 spring-web 這個(gè)包,但是這里面并沒有 jakarta 依賴,而剛好項(xiàng)目里面又引入了一些單元測試用的依賴,所以陰差陽錯(cuò)就將 jakarta 以 test 作用域引入進(jìn)來了...

所以,最終還是要引入 spring-boot-starter-web,不過我最后還是沒妥協(xié),只引入所需的依賴包

        <dependency>
            <groupId>jakarta.annotation</groupId>
            <artifactId>jakarta.annotation-api</artifactId>
        </dependency>

四、后續(xù)

通過查閱一些資料發(fā)現(xiàn),原來 Java 17 已經(jīng)不包括 jarkarta 模塊...

在 Java 17 中,Jakarta EE 被移除,取而代之的是引入了 Java EE 的一部分作為擴(kuò)展模塊。要在 Java 17 中使用 Java EE 的功能,你需要在項(xiàng)目的 pom.xml 文件中添加相應(yīng)的依賴

到此這篇關(guān)于springboot3.x中Jakarta包無法引入的問題的文章就介紹到這了,更多相關(guān)springboot Jakarta包無法引入內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

清新县| 宁远县| 隆子县| 平顺县| 冷水江市| 剑河县| 重庆市| 喀喇| 长岛县| 鄂尔多斯市| 肇庆市| 平罗县| 枝江市| 云阳县| 兴海县| 运城市| 丰城市| 博白县| 邵东县| 改则县| 焉耆| 兴业县| 泸州市| 贵溪市| 鄂伦春自治旗| 平江县| 吉林省| 平南县| 永修县| 周至县| 礼泉县| 和平区| 弋阳县| 黄龙县| 怀安县| 湖南省| 泾川县| 林周县| 黎城县| 津南区| 平阳县|