最近接觸的項(xiàng)目都是在很多地方都落地的項(xiàng)目,需要支持不同的環(huán)境使用不同的配置文件。一直以來都以為是人工的去寫不同的配置文件,手動(dòng)的去修改運(yùn)用的配置文件。感覺自己還是太low呀。maven的使用的還停留在基礎(chǔ)上。后面看項(xiàng)目才發(fā)現(xiàn)maven可以不同環(huán)境不同的發(fā)布,只需要制定環(huán)境參數(shù)或者設(shè)置就可以,整個(gè)工程簡(jiǎn)單粗暴。覺的非常不錯(cuò),于是想深入的了解一下。寫下此文.
一、maven profile介紹
profile可以讓我們定義一系列的配置信息,然后指定其在相應(yīng)的環(huán)境下使用相應(yīng)的配置文件。這樣我們就可以根據(jù)環(huán)境的不同切換不同的配置文件,然后每個(gè)profile對(duì)應(yīng)不同的激活條件和配置信息,從而達(dá)到不同環(huán)境使用不同配置信息的效果。for example,我們的項(xiàng)目落地不同的地域,每個(gè)地域都有每個(gè)地域特色的功能,需要我們配置不同一些參數(shù)。更加實(shí)際的情況是我們的生產(chǎn)環(huán)境與測(cè)試環(huán)境使用不同的數(shù)據(jù)庫(kù),賬號(hào)密碼、連接地址可能不一樣,如果每次你都切換環(huán)境都需要自己手動(dòng)去修改這些東西,一次兩次你可能覺的還好,每次測(cè)試、上線都需要修改的時(shí)候我保證你會(huì)瘋的。相信我!哈哈,這個(gè)時(shí)候就是profile的作用,可以一次性解決你的問題。特別結(jié)合持續(xù)集成工具的時(shí)候,profile可以很方便的上線發(fā)布。
二、如何配置profile
profile有三種配置方式:
單個(gè)項(xiàng)目配置:第一種是直接在pom.xml中配置
用戶配置:可以在用戶的setting.xml中配置。該文件在用戶家目錄下的“.m2”目錄下。
全局配置:可以在maven的conf的setting.xml中配置。
在pom.xml中配置的用法(個(gè)人推薦)
<profiles> <!--