<html>
通常一个Mavenproject在整个软件过程中,须要执行在多个不同的环境下,在本地、測试、验证、生产等环境上都须要配置不同的数据库链接或者其它资源。怎样方便的管理我们的多环境配置,并应用于持续交付环境中呢?
- 在POM.xml中配置Profile。定义不同的配置信息
<profiles>
<profile>
<!-- 本地开发环境 -->
<id>development</id>
<properties>
<profiles.active>development</profiles.active>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<!-- 測试环境 -->
<id>test</id>
<properties>
<profiles.active>test</profiles.active>
</properties>
</profile>
<profile>
<!-- 生产环境 -->
<id>production</id>
<properties>
<profiles.active>production</profiles.active>
</properties>
</profile>
</profiles>
如上例中,配置了开发、測试、生产三个环境。并将开发环境设置为默认配置,方便开发者手工检出后直接以开发配置执行,而測试环境与生产环境均为非人工操作。通过bamboo或其它工具自己主动通过命令进行调用。
- POM.xml中配置依据不同环境取不同的配置去构建
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<!-- 资源根文件夹排除各环境的配置。使用单独的资源文件夹来指定 -->
<excludes>
<exclude>test/*</exclude>
<exclude>production/*</exclude>
<exclude>development/*</exclude>
</excludes>
</resource>
<resource>
<directory>
src/main/resources/${profiles.active}
</directory>
</resource>
</resources>
如上例中,配置了构建文件夹src/main/resources中排除了该文件夹下test、development、production文件夹的全部内容。再引入src/main/resources/${profiles.active}的文件夹内容。因此能够达到test、development、production文件夹内容再构建的时候会选择其一进行打包。
project结构
依据上述配置。在project中,创建test、development、production三个文件夹。将三个环境的不同配置參数均配置当中,已达到不同环境的參数配置独立配置的效果。
构建时激活
完毕上面配置之后,我们能够通过mvn package命令进行打包看看效果。
由于profiles.active默觉得development,所以默认按开发环境进行构建的结果会是开发环境的包。若要打其它环境的包时。可參考例如以下命令:
測试环境:mvn package –P test
生成环境:mvn package -P production
- 本文已收录于下面专栏:
相关文章推荐
-
Maven POM.xml 标签具体解释
转载来源不详 pom作为项目对象模型。通过xml表示maven项目,使用pom.xml来实现。主要描写叙述了项目:包含配置文件;开发人员须要遵循的规则,缺陷管理系统,组织和licenses,项目的ur...- wf787283810
- 2017-07-27 14:43
- 56
-
Maven settings.xml配置说明
<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/
- ritaleo
- 2015-03-24 10:50
- 159
-
Maven学习笔记(七) setting.xml 配置具体解释
文件存放位置 <p style="margin: 10px auto; color: #33- lixuguang
- 2015-11-22 17:20
- 119
-
maven pom.xml具体解释
project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instan...- lovesimly
- 2016-12-03 22:38
- 204
-
maven的setting.xml 配置文件具体解释
<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <!--本- dawuafang
- 2015-05-26 13:58
- 36
-
MAVEN配置具体解释
- ixr_wang
- 2011-09-27 17:45
- 4253
-
maven settings 配置说明
<?xml version="1.0" encoding="UTF-8"?
> <settings xmlns="http://maven.apache.org/POM/4.0.0 " xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation="<a h
- xiaoboss
- 2011-05-22 12:31
- 846
-
maven的settings.xml配置具体解释
maven的配置文件settings.xml存在于两个地方: 1.安装的地方:${M2_HOME}/conf/settings.xml 2.用户的文件夹:${user.home}/.m2/s...- hong5225
- 2017-07-05 15:37
- 55
-
maven的setting.xml 配置文件具体解释
<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <!--本- dawuafang
- 2015-05-26 13:43
- 55
-
maven(4)------maven核心pom.xml文件经常使用元素分析
在maven项目中,pom文件是核心文件 pom.xml: [html] view plain copy xml version="1.0" encoding="UTF-8"?> p...- helongzhong
- 2017-01-03 14:42
- 246
posted on 2017-08-12 18:24 cynchanpin 阅读(148) 评论(0) 编辑 收藏 举报
0条评论