工程實例代碼:https://github.com/chocolateBlack/multi_env_folder_maven
成都創(chuàng)新互聯(lián)服務項目包括奈曼網(wǎng)站建設、奈曼網(wǎng)站制作、奈曼網(wǎng)頁制作以及奈曼網(wǎng)絡營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關系等,向廣大中小型企業(yè)、政府機構等提供互聯(lián)網(wǎng)行業(yè)的解決方案,奈曼網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務的客戶以成都為中心已經(jīng)輻射到奈曼省份的部分城市,未來相信會繼續(xù)擴大服務區(qū)域并繼續(xù)獲得客戶的支持與信任!利用Maven、Jenkins實現(xiàn)項目自動化部署,能夠按照bin、conf、lib文件進行打包,并能夠通過Jenkins按照環(huán)境一鍵發(fā)不到服務器上
path=${hdfs.path}
profile的配置如下:
dev
dev
/dev/wh/source/tp
true
test
dev
/test/wh/source/tp
接下來就需要讓maven能夠解析conf文件夾中Maven屬性,這就是maven-resources-plugin要做的事情。
開啟資源過濾,并指定過濾的目錄。以下配置指定src/main/conf目錄下所有類型的文件開啟資源過濾,并將解析后的文件指定輸出到target/class/conf目錄下
src/main/conf/
true
**/*.*
conf
2.其次,利用maven-assembly-plugin插件,將編譯好的項目分成bin、conf、lib目錄。
org.apache.maven.plugins
maven-assembly-plugin
2.6
make-assembly
package
single
com.test.HelloMaven
jar-with-dependencies
${project.name}
src/main/assembly/assembly.xml
關于文件分發(fā)的assembly.xml配置:
src/main/bin
bin
755
target/classes/conf/
conf
755
unix
*.formatted
755
${project.artifactId}-${project.version}.jar
/lib/
runtime
${project.groupId}:${project.artifactId}
755
${project.name}-jar-with-dependencies.jar
/lib/
runtime
項目結構圖:
通過mvn package -Pdev命令打包后conf中的配置文件是按照dev環(huán)境生成的結果
解析后的conf.yamlpath=/dev/wh/source/tp
target目錄下的結構圖,紅框標記的就是期待的結構目錄
3.項目按bin、conf、lib生成部署結構,剩下的事情就交給Jenkins,通過Jenkins以及其插件,將打包結果上傳目標服務器
如下主要描述Jenkins配置的主要幾個位置
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。