maven灵活解决环境问题

maven构建之灵活不必细说,这里举个实际遇到的场景,并给出我如何解决。


由于服务器紧张,我的hudson服务器和nexus服务器是部署在同一台的,


而这台服务器的外网是映射出去的公网地址。


也就是说本机通过外网地址是无法访问本机的。


代码是托管在Github的,每次push代码到Github,hudson就会做检查,如果发现更新就会做持续集成。


在公司内网地址没问题,但是在外办公或者家里,我项目写的就是外网地址,然后更新提交push。


hudson检查,把代码拉在本地就是公网地址了,然后一集成就出错。因为我构建部署的地址是外网。


那么该如何解决这个纠结的问题呢,maven已经帮你想到了。


请看配置文件:

	<profiles>
		<profile>
			<id>inner</id>
			<properties>
				<distribution.repository>192.168.125.51</distribution.repository>
			</properties>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>
		</profile>
		<profile>
			<id>outer</id>
			<properties>
				<distribution.repository>113.128.126.149</distribution.repository>
			</properties>
		</profile>
	</profiles>
	

	<distributionManagement>
		<repository>
			<id>account</id>
			<name>account Releases Repository</name>
			<url>http://${distribution.repository}:8080/nexus/content/repositories/account/</url>
		</repository>
		<snapshotRepository>
			<id>account-snapshots</id>
			<name>account Snapshot Repository</name>
			<url>http://${distribution.repository}:8080/nexus/content/repositories/account-snapshots/</url>
		</snapshotRepository>
	</distributionManagement>

用profile做了2个配置,一个内网一个外网,默认开启内网。


这样我在公司运行时直接使用,

mvn clean deploy

在外办公使用

mvn clean deploy -Pouter


而hudson执行的命令时

mvn clean deploy

这样在外办公时再也不用担心持续集成失败的问题了。




  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值