Rainbond Java Maven 多模塊源碼構建

Maven 多模塊項目構建識別策略

Maven 多模塊項目是根據 pom.xml 文件(下面簡稱 pom)來劃分的, Rainbond 對它的識別也是創建在 pom 的基礎上的. 主要是識別出具體模塊(module)的構建命令和啓動命令. 構建命令的做用是指定須要構建的模塊, 是相似於 "mvn install -pl 'module name' -am" 的 mvn 命令. 啓動命令的做用是在構建完成後, 指定須要執行的 Jar 包, 是相似於 "web: java $JAVA_OPTS -jar *.jar" 的命令.html

識別策略:java

  1. 根據根 pom 中的 modules 中的 module 標籤, 找到相應模塊下的 pom.
  2. 若是 pom 中的 packing 標籤的值是 jar(war), 則解析出當前 pom 對應的模塊名和 jar(war)包名. packing 標籤的值爲空, 會認爲是 jar.
  3. 模塊名由名級父 pom 中的 module 標籤的值組成, 用 "/" 分割, 相似於: rbd-worker/rbd-thirdparty.
  4. jar(war) 包名默認是 ${artifaceId}-*.jar(war). 若是設置了 finalName 標籤, 則會使用 finalName 標籤的值; 若是finalName 標籤使用了變量${project.name}或${project.aritfactId}, 則會使用變量對應的值; 若是使用了其餘的變量, 則直接用 代替, 即: .jar(war).
  5. 若是 pom 中的 packing 標籤的值是 pom, 且 modules 標籤中的 module 多於 1, 則重複 1 ~ 5.

由於不少地方都使用了通配符 * , 在構建出來的 jar(war) 不僅一個時, 識別出來的 jar(war) 包可能不能肯定惟一的包; 又或者識別出來的 jar(war) 包有誤, 這時候就須要用戶手動進行修改.ios

多模塊項目源碼規範

由於 Rainbond 對 Maven 多模塊項目的識別是創建在 pom 的基礎上的, 因此你們在書寫的 pom.xml 文件, 符合 pom 的規範就好. pom 的規範請參考: POM Referencegit

案例

這裏以SPRING CLOUD 微服務部署在 RAINBOND 的案例一文中的Pig項目中Java源碼部署部分爲例,一次性多模塊部署Pig項目(其餘依賴如Mysql默認安裝好)。web

模塊構建

新建應用,並命名爲spring-cloud spring

獲取項目克隆/下載地址: https://gitee.com/log4j/pig.gitsql

    1. 從源碼建立,選擇自定義源碼,填寫項目地址

dmk01.jpg

    1. 若是是多模塊項目會識別出來,選擇進入多模塊構建配置項

dmk02.jpg

    1. 根據Spring Cloud 微服務部署在RAINBOND的案例一文可知以下組件須要部署運行, 勾選後構建

dmk03.jpg
dmk04.jpg

    1. 構建完成效果圖(僅Java部分)

dmk05.jpg

    1. 查看某一應用構建源信息

dmk06.jpg

這樣Pig項目多模塊構建就完成了,後續其餘步驟參考 SPRING CLOUD 微服務部署在 RAINBOND 的案例
相關文章
相關標籤/搜索