亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Idea中SpringBoot多模塊項目的建立實現

瀏覽:67日期:2023-09-27 09:07:26

What

內含一個或多個maven模塊的SpringBoot項目稱為SpringBoot多模塊項目

Why

便于維護 將一個大的單體項目分成多個子模塊有利于模塊間的維護, 刪除或移動單個模塊時對其他模塊的影響也比較小 單個模塊還可以復用

共享依賴 只需要在父類中定義公共的依賴項,子類模塊都會共享父類的依賴項 在大型項目中會使得代碼更容易簡潔。

How

1.父模塊

創建父項目(SpringBoot)

Idea中SpringBoot多模塊項目的建立實現

刪除不需要的目錄

去除src .mvn mvnw mvnw.cmd 文件

Idea中SpringBoot多模塊項目的建立實現

pom

packaging標簽 打包方式改為'pom', 表示這個模塊是 聚合模塊 把子類模塊都'聚合'起來 使用maven打包,可以從這個模塊開始,會自動計算打包順序

<packaging>pom</packaging>

dependencies與dependencyManagement標簽

1. dependencies將依賴放入標簽中 子模塊會自動引入父類的的依賴

2. dependencyManagement將依賴放入標簽中 子模塊 不會 自動引入父類的的依賴 還需要在子類中聲明一次依賴 GAV中 不需要 聲明version標簽,version同父類中的一致

父類pom文件demo

<!--父類: springboot自帶的啟動類父類--><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.2.4.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><!--創建時填寫的基本信息--><groupId>com.ybj</groupId><artifactId>my-app</artifactId><version>0.0.1-SNAPSHOT</version><name>my-app</name><description>springboot多項目</description><!--父類的packing只能是pom--><packaging>pom</packaging><!-- 子類直接繼承--> <dependencies><!-- 子類需要在pom中 手動加入依賴(version不用寫)--> <dependencyManagement>

modules標簽 這個標簽管理的是被聚合的模塊 當新建子模塊時,modules會自動添加單個的module標簽

啟動類

父模塊啟動類,是整個模塊的啟動類 所有的請求都走父模塊的端口 為了使子模塊的服務也能啟動,需要在父模塊啟動類上加入注解

@ComponentScan(basePackages = {'com.ybj.*',})

2.子模塊

1.創建子模塊

選擇Module

Idea中SpringBoot多模塊項目的建立實現

選擇maven項目

Idea中SpringBoot多模塊項目的建立實現

輸入具體信息

Idea中SpringBoot多模塊項目的建立實現

2.pom

packaging標簽 這里可以選擇jar或者war 指定打包方式

parent 子類pom中的parent自動指向了父類的GAV 子類會自動引入父類pom中 dependencies 的中依賴項

<!-- 父類:自動選擇了父類--> <parent> <artifactId>my-app</artifactId> <groupId>com.ybj</groupId> <version>0.0.1-SNAPSHOT</version> </parent>

模塊間依賴 需要依賴某個模塊,可以在pom中聲明 這里的依賴是從本地倉庫下載的,不是遠程倉庫

Maven Helper插件 在idea中安裝maven helper插件 點擊pom文件,選擇 Dependency Analyzer

Idea中SpringBoot多模塊項目的建立實現

即可查看并搜索依賴項,這對于解決依賴沖突很有幫助

Idea中SpringBoot多模塊項目的建立實現

4.打包

方式1:聚合模塊直接打包

在聚合模塊打包,會自動計算依賴順序,依次打包

Idea中SpringBoot多模塊項目的建立實現

依次執行 clean 與 install maven會自動計算構建順序

Idea中SpringBoot多模塊項目的建立實現

方式2:使用插件

方式1的問題就是耗費時間長, 因為是全部打包, 所以就需要實現單個模塊打包 這里需要借助spring-boot-maven-plugin插件

<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.3.0.RELEASE</version><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins></build>

5. 常見問題

依賴沖突

因為子類會繼承父類的依賴項,所以可能 導致依賴沖突,從而使項目無法啟動。 這里可以使用maven helper插件進行沖突的排查

到此這篇關于Idea中SpringBoot多模塊項目的建立實現的文章就介紹到這了,更多相關Idea中SpringBoot多模塊內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Spring
相關文章:
主站蜘蛛池模板: 国产在视频线精品视频www666 | 亚洲精品资源在线 | 在线观看国产小屁孩cao大人 | 91无毒不卡 | 亚洲三级免费 | 成人在线一区二区三区 | 国产精品短视频 | 成人春色在线观看免费网站 | 日韩免费视频播播 | 日本理论片中文在线观看2828 | 狠狠色婷婷综合天天久久丁香 | 在线观看一区二区三区四区 | 久草不卡 | 精品a视频 | 日本特黄特色aa大片免费 | 丁香五月亚洲综合在线 | 日本护士一级毛片在线播放 | 国产拍视频 | 台湾一级毛片永久免费 | 一级毛片一级毛片一级毛片一级毛片 | 久久东京伊人一本到鬼色 | 国产成人一区 | 日韩欧美在线观看视频一区二区 | 欧美三级一区 | 国产一级精品视频 | 慈禧级淫片a级中文在线 | 国产人成午夜免费噼啪视频 | 猫咪人成免费网站在线观看 | 久久久国产在线 | 911精品国产91久久久久 | 亚洲国产成人精品激情 | 久久6国产| 久久久久久极精品久久久 | 欧美一a一片一级一片 | 国产啪在线91 | 国产精品亚洲精品观看不卡 | 日韩不卡一二三区 | 一区精品麻豆入口 | 在线观看麻豆视频 | 欧美暧暧视频 | 伊人网综合在线 |