Maven 进行多环境配置,使用profile文件进行配置

说明:Spring和Maven都可以进行profile配置多环境,这里只介绍Maven进行管理。我的开发环境:eclipse+maven

文件结构目录:

 

 

步骤:

一、在pom.xml文件中,添加如下:

<profiles>
<profile>
<id>develop</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<env>dev</env>
</properties>
</profile>
<profile>
<id>test</id>
<properties>
<env>test</env>
</properties>
</profile>
</profiles>

<build>
<filters>
<filter>conf/${env}/jdbc.properties</filter>
</filters>
<resources>
<resource>
<directory>src/main/resources/</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>

简单说明:profiles里面配置了两个profile文件,即有两个环境dev和test环境,<env>标签是为了切换环境,激活需要的环境需要。<activeByDefault>设置为true表明,该profile是默认激活状态。

<filters>里的<filter>的值表示你所要激活的环境所需的配置文件,比如:dev环境下,我需要激活conf/dev/jdbc.properties;test环境下,我需要激活conf/test/jdbc.properties。

<resources>中的<resource>标签表示,我需要替换的目标文件(替换的是值,不是整个jdbc.properties替换)

src/main/resource中的jdbc.properties内容如下:(所有内容就是下面的,行数自动忽略,那是我的注释造成的,不用管)

二、在eclipse下设置maven的编译环境(即在eclipse如何激活我所需要的环境):

右击该maven项目  -> Properties -> Maven ,在右边的框中填入你想切换的环境。如下:

点击Apply 和OK即可。然后重启服务器即可。

如果你到此,成功切换,那么已经完成,下面不用看了。如果不成功,提示com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException   字节的 UTF-8序列的字节 无效

请按如下操作:

三、出现UTF-8字节无效的错误,首先请确定你所有的代码都是UTF-8编码,然后还是报该错误。那么就需要在pom.xml中添加如下:

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

添加地方如下图:

说明:<project.build.sourceEncoding>标签保证整个工程是UTF-8编码

到此所有工作完成。

NOTE:spring也可以配置profile,但是需要配合web.xml进行,不是很灵活。所以本文选择maven进行环境配置。

本文参考:http://www.petrikainulainen.net/programming/tips-and-tricks/creating-profile-specific-configuration-files-with-maven/

spring配置请参考:找不到了,自己google吧!

posted @ 2015-05-26 13:51  suifeng718  阅读(9087)  评论(0编辑  收藏  举报