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