成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

Maven多模塊之父子關(guān)系

陸斌 / 3384人閱讀

摘要:多模塊父模塊創(chuàng)建先創(chuàng)建個(gè)簡單的空的作為父項(xiàng)目子模塊創(chuàng)建重新創(chuàng)建一個(gè)作為子項(xiàng)目父子模塊繼承關(guān)系注意此時(shí)父子模塊為兩個(gè)獨(dú)立的項(xiàng)目。特別注意,如果父項(xiàng)目提供了和,則刪除子項(xiàng)目坐標(biāo)中的和,直接繼承父項(xiàng)目相關(guān)坐標(biāo)。

Maven多模塊項(xiàng)目,適用于一些比較大的項(xiàng)目,通過合理的模塊拆分,實(shí)現(xiàn)代碼的復(fù)用,便于維護(hù)和管理。尤其是一些開源框架,也是采用多模塊的方式,提供插件集成,用戶可以根據(jù)需要配置指定的模塊。
Maven多模塊(pom) 1.1 父模塊創(chuàng)建

先創(chuàng)建個(gè)簡單的空的Maven Project作為父項(xiàng)目

1.2 子模塊創(chuàng)建

重新創(chuàng)建一個(gè)Maven Project作為子項(xiàng)目

1.3 父子模塊(繼承關(guān)系)

注意:此時(shí)父子模塊為兩個(gè)獨(dú)立的項(xiàng)目。

步驟1:子項(xiàng)目中加入節(jié)點(diǎn),傳入父項(xiàng)目完整坐標(biāo)。

步驟2:將子項(xiàng)目中的依賴都注釋掉。

注意:此時(shí)子項(xiàng)目中的沒有了Maven Dependencies。

步驟3:將子項(xiàng)目注釋的依賴添加到父項(xiàng)目中。

注意:此時(shí)子項(xiàng)目中的依賴又添加回來了。

這種直接在父工程中加入的方式,讓子工程可以直接復(fù)用依賴,但是缺點(diǎn)是所有的子項(xiàng)目無條件繼承父工程所有依賴,所以如果要在父工程中添加依賴只能針對(duì)非常通用的依賴。

在父項(xiàng)目中再添加一個(gè)依賴。

子項(xiàng)目同時(shí)也繼承了新添加的依賴。

那如果不想無條件繼承父工程的所有依賴,而想讓子項(xiàng)目自行選擇需要的依賴又該如何做呢?

1.4 dependencyManagement
在父項(xiàng)目中用節(jié)點(diǎn)包裹節(jié)點(diǎn),并且添加的是完整的依賴坐標(biāo)(gav)。

此時(shí)子項(xiàng)目中的Maven Dependencies又會(huì)消失,說明添加節(jié)點(diǎn)后,它并不負(fù)責(zé)相關(guān)依賴的下載。

子項(xiàng)目加入相應(yīng)同樣依賴,注意不要加versionversion繼承自父項(xiàng)目),需要什么樣的依賴就聲明什么。

特別注意,如果父項(xiàng)目提供了groupidversion,則刪除子項(xiàng)目坐標(biāo)中的groupidversion,直接繼承父項(xiàng)目相關(guān)坐標(biāo)。

dependencyManagement的作用:依賴版本管理器

本身并不下載任何依賴,只是管理依賴的版本。依賴的下載依然需要多帶帶的(不加dependencyManagement,額外寫一個(gè))去做

如果中的沒有聲明版本號(hào)(version),maven會(huì)去尋找有無對(duì)應(yīng)的dependencyManagement,當(dāng)前工程沒有就會(huì)向上找父工程。如果找到就以dependencyManagement中對(duì)應(yīng)依賴聲明的version為準(zhǔn),否則報(bào)錯(cuò)version is missing。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/73714.html

相關(guān)文章

  • Maven的pom文件那些事

    摘要:文件項(xiàng)目隸屬的實(shí)際項(xiàng)目名實(shí)際項(xiàng)目中的一個(gè)項(xiàng)目模塊名稱版本號(hào)當(dāng)前項(xiàng)目打包的方式,默認(rèn)為以上的配置會(huì)獲得一個(gè)格式的包用于定義構(gòu)建輸出的一些附屬的構(gòu)建。 pom.xml文件 org.son.nexus//項(xiàng)目隸屬的實(shí)際項(xiàng)目名 nexus-indexer//實(shí)際項(xiàng)目中的一個(gè)maven項(xiàng)目模塊名稱 2.0.0//版本號(hào) jar//當(dāng)前maven項(xiàng)目打包的方式,默認(rèn)為jar 以上的配置會(huì)獲得一個(gè)-...

    NoraXie 評(píng)論0 收藏0
  • vue中8種組件通信方式, 值得收藏!

    摘要:一父組件通過的方式向子組件傳遞數(shù)據(jù),而通過子組件可以向父組件通信。而且只讀,不可被修改,所有修改都會(huì)失效并警告。 之前寫了一篇關(guān)于vue面試總結(jié)的文章, 有不少網(wǎng)友提出組件之間通信方式還有很多, 這篇文章便是專門總結(jié)組件之間通信的 vue是數(shù)據(jù)驅(qū)動(dòng)視圖更新的框架, 所以對(duì)于vue來說組件間的數(shù)據(jù)通信非常重要,那么組件之間如何進(jìn)行數(shù)據(jù)通信的呢?首先我們需要知道在vue中組件之間存在什么樣...

    BicycleWarrior 評(píng)論0 收藏0
  • 前端數(shù)據(jù)驅(qū)動(dòng)的價(jià)值

    摘要:數(shù)據(jù)驅(qū)動(dòng)應(yīng)該是從這種模式開始流行的。這種其實(shí)已經(jīng)非常趨向與數(shù)據(jù)驅(qū)動(dòng)了。可以看到數(shù)據(jù)驅(qū)動(dòng)的難點(diǎn)和關(guān)鍵點(diǎn)就是數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)。數(shù)據(jù)驅(qū)動(dòng)主要是處理模塊之間的一種邏輯。 數(shù)據(jù)驅(qū)動(dòng)應(yīng)該是從flux/redux + react這種模式開始流行的。 他的背后不僅僅是數(shù)據(jù)驅(qū)動(dòng)這么簡單,在復(fù)雜的系統(tǒng)中,我覺得它解決了一個(gè)很關(guān)鍵的問題就是模塊間的交互/通信。有很多文章拿他和mvc/mvvm去比較,我個(gè)人覺...

    ivyzhang 評(píng)論0 收藏0
  • 阿里巴巴開源框架JarsLink

    摘要:也是阿里巴巴的開源項(xiàng)目之一,目前在微貸事業(yè)群廣泛使用。模塊的版本,如果版本號(hào)和之前加載的不一致,框架則會(huì)重新加載模塊。 JarsLink (原名Titan) 是一個(gè)基于JAVA的模塊化開發(fā)框架,它提供在運(yùn)行時(shí)動(dòng)態(tài)加載模塊(一個(gè)JAR包)、卸載模塊和模塊間調(diào)用的API。也是阿里巴巴的開源項(xiàng)目之一 https://github.com/alibaba/ja...,目前在微貸事業(yè)群廣泛使用。...

    coolpail 評(píng)論0 收藏0
  • 阿里巴巴開源框架JarsLink

    摘要:也是阿里巴巴的開源項(xiàng)目之一,目前在微貸事業(yè)群廣泛使用。模塊的版本,如果版本號(hào)和之前加載的不一致,框架則會(huì)重新加載模塊。 JarsLink (原名Titan) 是一個(gè)基于JAVA的模塊化開發(fā)框架,它提供在運(yùn)行時(shí)動(dòng)態(tài)加載模塊(一個(gè)JAR包)、卸載模塊和模塊間調(diào)用的API。也是阿里巴巴的開源項(xiàng)目之一 https://github.com/alibaba/ja...,目前在微貸事業(yè)群廣泛使用。...

    lanffy 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<