maven profile实现多环境配置

每次项目部署上线都需要手动去修改配置文件(比如数据库配置)然后才能打包,很不方便,可以根据以下教程用maven的profile 实现多环境的配置。

以数据库的配置为例,在src/main/resources 下新建三个文件夹,分别叫做dev,online,test,分别对应开发环境,线上环境,测试环境。在每个文件夹下拷贝进去jdbc.properties文件,分别对应不同的数据库配置。如图:

maven profile实现多环境配置

在pom.xml文件中加入以下内容:

<profiles>  

           <profile>  

            <!-- 开发环境 -->  

            <id>dev</id>  

            <properties>  

                <env>dev</env>

            </properties>  

            <activation>  

                <!-- 默认**该profile节点-->

                <activeByDefault>true</activeByDefault>  

            </activation> 

            <build>

                <resources>

                    <resource>

                        <directory>src/main/resources/dev</directory>

                    </resource>

                    <resource>

                        <directory>src/main/resources</directory>

                    </resource>

                </resources>

            </build>

        </profile>  

        <profile>  

            <!-- 测试环境 -->  

            <id>test</id>  

            <properties>  

                <env>test</env>

            </properties>

            <build>

                <resources>

                    <resource>

                        <directory>src/main/resources/test</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/online</directory>

                    </resource>

                    <resource>

                        <directory>src/main/resources</directory>

                    </resource>

                </resources>

            </build>

        </profile> 

    </profiles>

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

项目右键-->maven-->Select Maven profiles ,选择一个环境,修改最好清理一下项目才会生效。一定要clean一下。

maven profile实现多环境配置选择profile

maven profile实现多环境配置选择profile后,然后运行项目就是你选择的环境了,或者直接导出war包。

如果想用maven打包的话,右击项目-run as -maven build(选择第二个maven build),会进入如下界面:

maven profile实现多环境配置goals输入框,填写package,勾选上skip tests,profiles 就是你要根据什么环境来打包,点击apply,点击run,就可以正常打出war包了。

注:打出来的war包会放在项目的target目录里面。