springboot多項目結(jié)構(gòu)實現(xiàn)
微服務的目錄結(jié)構(gòu)一般分為如下幾個模塊:

當我們做的項目稍微大一點之后,就會經(jīng)常遇到需要把不同的模塊分離出來的時候,比如微信的朋友圈、微信支付、聊天服務等模塊,像這種微服務項目一般都會把base、common、前端抽離出來。
common:用于存放一些公用的模塊,比如枚舉類(成功和失敗返回數(shù)據(jù)),對外公開,pom里面不含任何和業(yè)務相關的東西。
base:一個寫業(yè)務邏輯的包,把項目公用的業(yè)務模塊抽出來放到項目里,不對外公開。在base的pom文件里包含了所有公用業(yè)務邏輯的依賴,在base里引用之后,其他的業(yè)務模塊就不需要再進入這些依賴了(依賴傳遞)。
注意在其他業(yè)務邏輯的模塊里面,都需要引入base:

base依賴于common,因為實現(xiàn)base里面的業(yè)務也需要用到common里的枚舉等。
在父項目的pom文件里面有一個<dependencyManagement> 標簽,像這樣:

所有導入的依賴都被放到了<dependencyManagement> 標簽里面,
<dependencyManagement> 的作用:
管理依賴版本號,微服務項目如果把所有模塊的依賴各自引入,會出現(xiàn)版本沖突的問題,所以<dependencyManagement>充當了一個全局的依賴管理。當某個 Maven 模塊需要具體引用某依賴的時候,直接在集合中指定若干個,這樣就可以實現(xiàn)整個項目依賴的全局管理,不至于零碎地分布在每個模塊中。在此標簽元素中聲明了所需依賴的版本號等信息,當子項目引入此依賴 jar 包時就需要列出版本號,如果不添加此標簽的話子模塊的pom文件就會直接繼承。
relativePath的作用:
默認值為../pom.xml,會從本地路徑中獲取parent的pom。
如果是一個空值,表示將始終從倉庫(父級的pom文件)中獲取,不從本地路徑獲取。

maven構(gòu)建jar包時候查找順序:relativePath元素中的地址–本地倉庫–遠程倉庫
到此這篇關于springboot多項目結(jié)構(gòu)實現(xiàn)的文章就介紹到這了,更多相關springboot多項目結(jié)構(gòu)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
java8 統(tǒng)計字符串字母個數(shù)的幾種方法總結(jié)(推薦)
下面小編就為大家分享一篇java8 統(tǒng)計字符串字母個數(shù)的幾種方法總結(jié)(推薦),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來吧2017-11-11
Java使用Sftp和Ftp實現(xiàn)對文件的上傳和下載
這篇文章主要介紹了Java使用Sftp和Ftp實現(xiàn)對文件的上傳和下載,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-03-03

