博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
maven里如何根据不同的environment打包
阅读量:7071 次
发布时间:2019-06-28

本文共 1700 字,大约阅读时间需要 5 分钟。

一个项目里总会有很多配置文件。而且一般都会有多套环境。开发的、测试的、正式的。而在这些不同的环境这些配置的值都会不一样。比如mail的配置、服务的url配置这些都是很常见的。所以在打包的时候就要根据environment来选不同的值或者配置文件。

比较常用的办法就是为不同的环境建立不同的配置文件目录。在打包的时候用对应的文件目录下的配置文件。

|-- resources|   |-- dev | |-- product | |-- qa | `-- qa53

以前用ant的时候打包的时候处理就比较方便。打包前copy一下对应目录下的配置文件覆盖target下的那些文件再打包就可以了。在刚开始用maven的时候就想要怎么解决,一直没有找到ant的这种方式的可行的办法。其实主要是按ant这种处理方法去思考了。只去想没有有cp这种target。其实在maven里用profile就可以解决了。对于不同的environment定义不同的profile就ok了,目录结构还是沿用原来的就可以。

在pom.xml里定义一个变量

......
qa53

这里定义的值是经常打包的一个profile,方便少敲点代码。然后定义一些profile

product
product
dev
dev
qa
qa

最后再修改一下打包的plugin,引用这个变量。

org.apache.maven.plugins
maven-war-plugin
false
src/main/resources/${package.environment}
WEB-INF/classes
true

这里注意一个参数<filtering>true</filtering>,一定要设置成true这样才会用对应environment目录下的配置文件覆盖原来的。ok。mvn package的时候就会用默认的qa53目录下的配置文件。如果要发布正式环境的包就运行。mvn -Pproduct package

分类: ,
+加关注
0
0
上一篇:
下一篇:
posted @ 2017-03-21 15:56 阅读( 63) 评论( 0)
 
(评论功能已被禁用)
最新IT新闻:
·
·
·
·
·
»
最新知识库文章:
·
·
·
·
·
»
历史上的今天:
2013-03-21
2012-03-21
2012-03-21
2012-03-21
2012-03-21

公告

本文转自 博客园博客,原文链接: ,如需转载请自行联系原作者
 
 
 
你可能感兴趣的文章
重新回归博客园,写在开始的话。
查看>>
JavaScript定义函数
查看>>
AJAX的基础
查看>>
安全使用电子邮件十三法
查看>>
开发人员必知的20+HTML5技巧
查看>>
组合数学
查看>>
Loadrunner如何添加负载机
查看>>
Vue中组件之间的通信方式
查看>>
数据库并行读取和写入(Python实现)
查看>>
Spring学习(15)--- 基于Java类的配置Bean 之 @Bean & @Scope 注解
查看>>
英语写作-----赖世雄<<突破英语写作关>>笔记
查看>>
MySQL批量导出以某数字或字母开头的表
查看>>
java变长参数
查看>>
状态和面向对象编程——2.状态介绍
查看>>
html -- 实体
查看>>
SVN中的check out与export的区别
查看>>
如何重新注册VMware Update Manager(VUM)至vCenter Server中
查看>>
hdu1754
查看>>
vue前端页面跳转参数传递及存储
查看>>
使用Google Analytics跟踪下载等事件
查看>>