日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Maven 建立父子项目和跨项目调用内容的步骤

發(fā)布時(shí)間:2025/3/12 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Maven 建立父子项目和跨项目调用内容的步骤 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

使用Maven管理項(xiàng)目,同時(shí)我們是做微服務(wù),所以對(duì)于微服務(wù)項(xiàng)目來(lái)說(shuō),使用Maven建立起一個(gè)父子項(xiàng)目這種關(guān)系,很方便管理(只是個(gè)人感覺(jué))

設(shè)計(jì)層面

(1)服務(wù)端和客戶端肯定是分開寫的,另外還有一個(gè)公共的項(xiàng)目,比如一些實(shí)體類等都是可以作為公共的類放到這個(gè)公共的項(xiàng)目。

(2)這樣來(lái)說(shuō),子項(xiàng)目至少有三個(gè),server(服務(wù)層子項(xiàng)目)、web(視圖層子項(xiàng)目)、common(公共層子項(xiàng)目)。這可不是定義哈,是我自己起的。

(3)父項(xiàng)目可以命名為parent,這樣就構(gòu)成了一個(gè)父子項(xiàng)目的概念。下面開始建立。

補(bǔ)充注意:這幾天把一個(gè)小項(xiàng)目建好,交給領(lǐng)導(dǎo),領(lǐng)導(dǎo)說(shuō)我設(shè)計(jì)錯(cuò)誤,將來(lái)會(huì)有上百個(gè)微服務(wù)項(xiàng)目,common如果作為單個(gè)的微服務(wù)的公共層,未免有點(diǎn)浪費(fèi),領(lǐng)導(dǎo)說(shuō)應(yīng)該是放所有微服務(wù)子項(xiàng)目共有的東西,具體我也不懂,所以在這里誤解大家了,抱歉,但是建立父子項(xiàng)目的方法還是這樣的,但是微服務(wù)項(xiàng)目設(shè)計(jì)不是這樣的,可以參照!!!

創(chuàng)建父項(xiàng)目

? (1)下邊這張圖是父子項(xiàng)目建立的不同之處,父項(xiàng)目建立是建Maven project,即項(xiàng)目。子項(xiàng)目建立的是Module,即模塊。如下:

?

? (2)選擇Maven project開始建立父項(xiàng)目。如下圖,選擇create a simple project,原因父項(xiàng)目需要建立的packaging為POM,子項(xiàng)目建立的packaging為jar或者war,勾選此處,在下一步中可以選擇packaging:
(3)再次提醒,父項(xiàng)目的packaging選擇POM,子項(xiàng)目選擇Jar或者war,順便說(shuō)一句,一般來(lái)說(shuō),要?jiǎng)?chuàng)建在tomcat里運(yùn)行的項(xiàng)目,應(yīng)該是要?jiǎng)?chuàng)建war,比如本文說(shuō)的service子項(xiàng)目和web子項(xiàng)目,應(yīng)該是創(chuàng)建成war,但是有例外是,如果要?jiǎng)?chuàng)建spring boot微服務(wù)項(xiàng)目,因?yàn)閟pring boot采用的都是富jar形式,就需要所有的子項(xiàng)目都為jar,這僅僅是個(gè)人理解,具體按照自己的需求建立。

?

? (4)如果不小心將父項(xiàng)目的packaging建立成不是POM的,可以打開項(xiàng)目的pom.xml文件,進(jìn)行修改。如下:

?

(5)修改完保存后,項(xiàng)目會(huì)報(bào)錯(cuò),直接項(xiàng)目右擊選擇Maven------->update project即可。

創(chuàng)建子項(xiàng)目

(1)子項(xiàng)目的創(chuàng)建必須選擇maven module,同時(shí)在里邊制定父項(xiàng)目就可以了,注意不要忘記,在前邊將父項(xiàng)目的packing由Jar改為POM\,具體創(chuàng)建子項(xiàng)目步驟如下:

****

(2)創(chuàng)建完之后就可以看到如下的內(nèi)容:
(3)同理,將service子項(xiàng)目和web子項(xiàng)目建立完成后,這時(shí)候點(diǎn)擊父項(xiàng)目里的pom.xml,就會(huì)看到如下內(nèi)容:

(4)這樣就完成了父子項(xiàng)目的創(chuàng)建。但是如何進(jìn)行項(xiàng)目與項(xiàng)目之間的關(guān)聯(lián),還要進(jìn)行一些配置。

跨項(xiàng)目訪問(wèn)內(nèi)容

比如本文中的common子項(xiàng)目為公共項(xiàng)目,其中可以將公用的東西,比如實(shí)體類、工具類等存儲(chǔ)到該項(xiàng)目,將來(lái),可以在service子項(xiàng)目和web子項(xiàng)目中直接調(diào)用即可,如果達(dá)到這樣的功能,就需要添加依賴標(biāo)簽。以service子項(xiàng)目調(diào)用common子項(xiàng)目為例,步驟如下:

(1)測(cè)試要求:首先在common子項(xiàng)目中建立一個(gè)Person類,然后在service子項(xiàng)目中建立一個(gè)TestPerson類,在該類中調(diào)用Person類。

? ****

(2)其實(shí)就是要在service子項(xiàng)目中引入common子項(xiàng)目的依賴即可。如下,在service子項(xiàng)目的pom.xml中添加如下內(nèi)容:

?

(3)在service子項(xiàng)目中添加完以上一個(gè)依賴標(biāo)簽,該標(biāo)簽指向common子項(xiàng)目,這樣就相當(dāng)于將common子項(xiàng)目中的內(nèi)容獲取到了,注意寫入以上的內(nèi)容,前提,必須common子項(xiàng)目中有如下內(nèi)容,該內(nèi)容默認(rèn)是存在的,只要不亂刪除,就一直會(huì)有的,否則,就算在service子項(xiàng)目中填上上邊的依賴,也無(wú)法獲取到其中的內(nèi)容。

?

? (4)好了,在service子項(xiàng)目中測(cè)試一番吧,如下:

?

? (5)這樣就完成了項(xiàng)目之間的調(diào)用,將來(lái)就把所有的公共內(nèi)容放到common子項(xiàng)目中,同理web子項(xiàng)目想要引入common子項(xiàng)目也是如此。

(6)除了公用的類,可以公用,也包括jar包,可以在common子項(xiàng)目中導(dǎo)入,這樣service子項(xiàng)目中也可以用到該jar包。

父項(xiàng)目只是充當(dāng)聚合層,不寫任何代碼,父項(xiàng)目只是負(fù)責(zé)管理依賴

總結(jié)

以上是生活随笔為你收集整理的Maven 建立父子项目和跨项目调用内容的步骤的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。