摘要:前言雖然勢頭很猛,但是依然是項目構(gòu)建的優(yōu)先選擇,本文簡要介紹一些工程實踐多模塊如果工程比較復(fù)雜,或者預(yù)期后續(xù)會變的比較復(fù)雜,可以將工程分成多個模塊,常用的分模塊的方法,核心代碼,工具,服務(wù),前端在頂層文件中聲明工程包含的各個模塊在子模塊文件
前言
雖然 Gradle 勢頭很猛,但是 Maven 依然是 Java 項目構(gòu)建的優(yōu)先選擇,本文簡要介紹一些 Maven 工程實踐
多模塊(multiple module)如果工程比較復(fù)雜,或者預(yù)期后續(xù)會變的比較復(fù)雜,可以將工程分成多個模塊,常用的分模塊的方法:
core,核心代碼)
util/common,工具
service,服務(wù)
web/front,web 前端
在 root(頂層)pom 文件中聲明工程包含的各個模塊
... pom core service util web
在子模塊 pom 文件中聲明 parent pom
插件... com.aachuxing.gov.report ... 1.0
使用 Maven 離不開各種各樣的插件,簡單介紹一下常用的插件,詳細使用說明可以參考官方文檔,或者直接 google/baidu,在聲明插件的時候推薦:
將 屬性值(jdk.version)定義在 properties 標(biāo)簽中
將 build 標(biāo)簽聲明在 root pom 中
maven-compiler-pluginmaven-compiler-plugin 可以指定 jdk 版本,推薦設(shè)置 jdk8 以上版本
maven-surefire-plugin... 1.8 org.apache.maven.plugins maven-compiler-plugin ${jdk.version} ${jdk.version}
maven-surefire-plugin 用來排除一些你不想在持續(xù)集成中運行 test case,它們可能僅僅是你用來測試你的代碼,比如測試 dao 中 SQL 書寫是否有問題
maven-assembly-plugin... org.apache.maven.plugins maven-surefire-plugin 2.19.1 **/XXXTest.java
通常一個 Java 工程除了 jar 包之外還有各種各樣的文件:shell 腳本,properties(屬性)文件,數(shù)據(jù)文件(json, xml),使用 maven-assembly-plugin 可以對工程打包部署做深度定制
... org.apache.maven.plugins maven-assembly-plugin 2.6 make-assembly package single src/main/assembly/assembly1.xml src/main/assembly/assembly2.xml src/main/assembly/assembly3.xml
assembly.xml 配置文件用于配置具體的打包過程,在 descriptors 標(biāo)簽中可以指定多個配置文件,實現(xiàn)一套代碼打出多個 "渠道包"
下面是一個 assembly.xml 文件示例:
${id} tar.gz false src/main/assembly/bin bin startup.sh shutdown.sh 0755 ${project.build.directory}/classes / config.properties log4j2.xml 0644 lib
formats,通過后綴名指定打包文件格式,tar.gz, zip, war .etc
fileSets,指定哪些文件被打到包里頭
maven-dependency-pluginmaven-dependency-plugin 用于管理依賴,一個應(yīng)用場景是將依賴的 jar 包解開合并到工程中
總結(jié)maven-dependency-plugin prepare-package unpack com.compony.xxx yyy ${project.build.outputDirectory}
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/66874.html
摘要:接下來,本文將重點闡述在環(huán)境的多模塊構(gòu)建過程。本項目傳送門一創(chuàng)建聚合父工程首先使用來快速創(chuàng)建好一個工程。然后在里面聲明該父工程包含的子模塊。 序言:比起傳統(tǒng)復(fù)雜的單體工程,使用Maven的多模塊配置,可以幫助項目劃分模塊,鼓勵重用,防止POM變得過于龐大,方便某個模塊的構(gòu)建,而不用每次都構(gòu)建整個項目,并且使得針對某個模塊的特殊控制更為方便。接下來,本文將重點闡述SpringBoot在M...
摘要:響應(yīng)式編程是基于異步和事件驅(qū)動的非阻塞程序,只是垂直通過在內(nèi)啟動少量線程擴展,而不是水平通過集群擴展。三特性常用的生產(chǎn)的特性如下響應(yīng)式編程模型適用性內(nèi)嵌容器組件還有對日志消息測試及擴展等支持。 摘要: 原創(chuàng)出處 https://www.bysocket.com 「公眾號:泥瓦匠BYSocket 」歡迎關(guān)注和轉(zhuǎn)載,保留摘要,謝謝! 02:WebFlux 快速入門實踐 文章工程: JDK...
摘要:重度強迫癥患者取消大小寫敏感,讓自動完成更齊全。如何為當(dāng)前項目工程添加多個模塊啊答對著工程右鍵選擇通常選擇,如圖寫在最后歡迎關(guān)注喜歡和點贊后續(xù)將推出更多的工具集教程,敬請期待。公眾號回復(fù)面試,領(lǐng)取面試實戰(zhàn)學(xué)習(xí)資源。 showImg(https://segmentfault.com/img/remote/1460000018862588); 前言:IntelliJ IDEA 如果說Int...
閱讀 3300·2021-11-23 09:51
閱讀 2911·2021-10-28 09:33
閱讀 875·2021-10-08 10:04
閱讀 3682·2021-09-22 15:13
閱讀 1015·2019-08-30 15:55
閱讀 2906·2019-08-30 15:44
閱讀 564·2019-08-30 13:04
閱讀 2938·2019-08-30 12:56