maven profile实现多环境配置

每次项目部署上线都需要手动去修改配置文件(比如数据库配置,或者一个自定义的配置)然后才能打包,很麻烦,网上找到 maven profile可以完成这个工作,记录如下:

环境:eclipse + spring mvc + maven

1、直接看图,把数据库的配置单独拿出来放在了resources_env目录下,三个不同环境参数不同,

2,在pom文件中添加配置    这个引用自:http://www.cnblogs.com/raphael5200/p/6677549.html,感谢

<profiles>  
        <profile>  
            <!-- 开发环境 -->  
            <id>dev</id>  
            <properties>  
                <env>dev</env>
            </properties>  
            <activation>  
                <!-- 默认激活该profile节点-->
                <activeByDefault>true</activeByDefault>  
            </activation> 
            <build>
                <resources>
                    <resource>
                        <directory>src/main/resources_env/dev</directory>
                    </resource>
                    <resource>
                        <directory>src/main/resources</directory>
                    </resource>
                </resources>
            </build>
        </profile>  
        <profile>  
            <!-- 测试环境 -->  
            <id>qa</id>  
            <properties>  
                <env>qa</env>
            </properties>
            <build>
                <resources>
                    <resource>
                        <directory>src/main/resources_env/qa</directory>
                    </resource>
                    <resource>
                        <directory>src/main/resources</directory>
                    </resource>
                </resources>
            </build>
        </profile>    
        <profile>
            <!-- 生产环境 -->
            <id>online</id>  
            <properties>
                <env>online</env>
            </properties>  
            <build>
                <resources>
                    <resource>
                        <directory>src/main/resources_env/online</directory>
                    </resource>
                    <resource>
                        <directory>src/main/resources</directory>
                    </resource>
                </resources>
            </build>
        </profile> 
    </profiles>

说明:这个resources里面的路径对应上面文件路径,resources里面所有的配置加上各自环境的配置,

在引用jdbc.pro的地方如下:在datasource.xml中,

还有 新增的 evn那个包下面的所有文件都需要设置为资源文件,这个不必说 直接看图

3,maven设置要使用的环境:

项目右键-->maven-->Select Maven profiles ,选择一个环境,修改最好清理一下项目才生效,我之前没清理,发现没起作用。

 

4、然后运行项目就是你选择的环境了,或者直接导出war包,

  其他的多环境配置同。

参考:http://www.cnblogs.com/raphael5200/p/6677549.html  感谢。

原文地址:https://www.cnblogs.com/xululublog/p/7803287.html