Maven project multi environment config

       在是用Jenkins进行项目自动部署的过程中,遇到一个问题:开发环境<dev>,内测环境<alpha>,测试环境<beta>,生产环境<production>的配置文件可能存在不同的情况,最初想到的是通过Git的多个branch来实现,但是感觉这样太过浪费,后来了解到<Via Others>:可以使用profile配置来实现,后来通过验证,最终采用了Maven的resource来实现:

0.项目的目录结构如果,所有的配置文件均统一放在application-config.yml中,然后再src/main中新建env目录,存放dev/alpha/beta等环境的配置文件。

1.配置Maven pom模型来控制资源的使用:

<build>
	<!-- For multi env config -->
	<resources>
		<resource>
			<directory>src/main/resources</directory>
			<includes>
				<include>**/*</include>
			</includes>
		</resource>
		<resource>
			<directory>src/main/env/${env}</directory>
			<includes>
				<include>application-config.yml</include>
				<include>log4j2.xml</include>
			</includes>
		</resource>
	</resources>
    ...
</build>

2.通过传参的方式来控制具体的配置文件使用:package -Denv=beta/tomat7:run -Denv=beta etc...,应为开发环境为最常用的环境,所以可以将dev设置为默认的环境,在当前pom或者parent pom中添加:

<!-- For multi env config<default> -->
<env>dev</env>

 

转载于:https://my.oschina.net/geek4j/blog/697978

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值