Maven構(gòu)建多模塊項(xiàng)目

我最近在Maven項(xiàng)目領(lǐng)域?qū)W到了越來越多的東西,我想用它來實(shí)現(xiàn)一個(gè)我想解決一段時(shí)間的想法。這個(gè)問題是關(guān)于如何使用我將使用的結(jié)構(gòu)有效地構(gòu)建一個(gè)Maven項(xiàng)目。

我對(duì)結(jié)構(gòu)的看法如下:

- MyProject
  |
  |_Frontend
  | |
  | |_Window
  | | |_pom.xml
  | |...
  | |_pom.xml
  |
  |_Backend
  | |
  | |_Database
  | | |_pom.xml
  | |...
  | |_pom.xml
  |
  |_pom.xml

其中MyProject將是FrontendBackend的父對(duì)象。對(duì)于所有包裝,將設(shè)置為pom。最后FrontendBackend中包含代碼的項(xiàng)目,例如Window項(xiàng)目和Database項(xiàng)目(實(shí)際上,FrontendBackend中當(dāng)然不止一個(gè)項(xiàng)目,這只是為了可視化)。來自Frontend的項(xiàng)目可能依賴于來自Backend的項(xiàng)目。

我會(huì)將FrontendBackend設(shè)置為MyProject父POM中的<module>s,將Frontend中的所有項(xiàng)目設(shè)置為FrontendPOM中的<module>s,對(duì)Backend的處理相同。然后我會(huì)在Frontend的POM的<dependencyManagement>元素中為Backend項(xiàng)目添加<dependencies>,這樣我就可以分別在Frontend項(xiàng)目中添加所需的依賴項(xiàng)(在本例中,Main將位于Window項(xiàng)目中)

所以我的問題是:如何構(gòu)建它,使其可以用作程序?

我對(duì)Maven比較陌生,所以我不太熟悉整個(gè)構(gòu)建理念。我得到了它的好處,因此我想使用它,但我不知道如何在這樣的項(xiàng)目中實(shí)現(xiàn)我想要的。我在網(wǎng)上搜索答案,但我可能措辭太差了,因?yàn)槲艺也坏轿倚枰拇鸢浮R虼耍绻幸黄恼禄蛞粋€(gè)答案,適用于這里,也可以鏈接它,但如果這里有人愿意花時(shí)間給我一個(gè)更深入的解釋這個(gè)具體問題,我不會(huì)抱怨。

謝謝你的回答。

? 最佳回答:

你想到的結(jié)構(gòu)看起來是合理的。我正在為您的圖表添加一些詳細(xì)信息:

+- myProject 
   +- pom.xml  ... <packaging>pom, aggregator (<modules>) of frontend & backend
   |
   +- frontend
   |  +- pom.xml  ... <parent>myProject, <packaging>pom, aggregator (<modules>) of window & ***
   |  |  
   |  +- window
   |  |  +- pom.xml  ... <parent>frontend
   |  |
   |  +- ***
   |     +- pom.xml  ... <parent>frontend
   |
   +- backend
      +- pom.xml  ... <parent>myProject, <packaging>pom, aggregator (<modules>) of database & ***
      |
      +- database
      |  +- pom.xml  ... <parent>backend
      |
      +- ***
         +- pom.xml  ... <parent>backend

只是為了澄清,關(guān)于MyProject將是父級(jí)[…]包裝將設(shè)置為pom”,請(qǐng)參閱POM參考,繼承v。加總和這個(gè)答案:

長(zhǎng)話短說,有以下關(guān)系:

  • 聚合器1(<packaging>pom)→ (sub-)modules ... 對(duì)于(sub-)modules的聚合
  • 父項(xiàng)目(<packaging>pom1|jar|war|...)← 子項(xiàng)目。。。用于繼承(從父級(jí)到子級(jí)的POM配置)

因此,<packaging>pom不是必需的,因?yàn)?code>MyProject是父級(jí),但因?yàn)樗蔷酆掀鳌J聦?shí)上,父項(xiàng)目對(duì)其子項(xiàng)目一無所知。只有子項(xiàng)目聲明<parent>...

主站蜘蛛池模板: 日韩一区精品视频一区二区| 一本一道波多野结衣一区| 日韩一区二区视频在线观看| 无码一区二区三区免费视频| 国产一区二区精品| 国产aⅴ精品一区二区三区久久 | 怡红院一区二区三区| 在线观看午夜亚洲一区| 高清一区二区在线观看| 国产女人乱人伦精品一区二区| 无码国产精品久久一区免费| 2022年亚洲午夜一区二区福利| 久久久久99人妻一区二区三区| 国产无线乱码一区二三区| 国产一区二区精品| 久久精品无码一区二区三区| 丰满爆乳一区二区三区| 免费看一区二区三区四区| 91精品一区国产高清在线| 久久精品国产一区二区三区 | 中文字幕乱码亚洲精品一区| 精品爆乳一区二区三区无码av| 亚洲一区二区三区高清| 搡老熟女老女人一区二区| 亚洲一区二区三区免费在线观看 | 国产一区二区三区在线视頻| 中文字幕一区二区三区有限公司| 精品国产一区二区三区2021| 伊人久久精品无码av一区| 久久国产精品一区免费下载| 无码一区二区三区老色鬼| 中文字幕一区二区精品区| 国产精品无码一区二区三区不卡 | 岛国精品一区免费视频在线观看| 国产vr一区二区在线观看| 久久久精品一区二区三区 | 国产亚洲一区二区在线观看| 人妻无码久久一区二区三区免费| 国产主播在线一区| 国产一区二区三区亚洲综合| 久久成人国产精品一区二区|