美文网首页征服SpringJava 杂谈Java学习笔记
如何通过Maven Profile进行多环境配置

如何通过Maven Profile进行多环境配置

作者: 文远斯验 | 来源:发表于2017-05-14 15:43 被阅读132次

在系统开发,测试,到最终上线发布的过程中,切换环境是一个很常见的需求,不同环境中的参数(例如数据库配置、日志系统的级别)并不相同,如果每次切环境都要手动修改配置,实在称不上高效优雅,这就使得如何低成本地切换环境成为了一个非常实际的问题。

一个解决思路是首先在资源文件中设置好不同环境中用到的参数,然后在构建阶段确定要将哪一个资源文件编译到应用包中。根据这个思路我们可以通过Maven Profile来完成多环境配置,下文举一个配置jdbc的简单例子方便大家理解。
</br>

1. 资源文件

在资源文件中设置好jdbc连接的地址、密码等基本参数


</br>

2. 在pom.xml中配置profile
<profiles>
    <!--开发环境-->
    <profile>
        <id>development</id>
        <properties>
            <environment>development</environment>
        </properties>
        <!--默认选择这个配置-->
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
    </profile>
    <!--生产环境-->
    <profile>
        <id>production</id>
        <properties>
            <environment>production</environment>
        </properties>
    </profile>
</profiles>

</br>

3. 配置资源文件
<build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <excludes>
                <exclude>properties/*</exclude>
            </excludes>
        </resource>
        <resource>  
            <directory>src/main/resources/properties/${environment}</directory>  
        </resource>  
    </resources>
</build>

</br>

4.Maven构建
mvn clean package -P development
mvn clean package -P production

分别构建出开发环境或生产环境的war包,若不设置-P参数,按照我们上文中pom.xml的配置,会默认选择开发环境的profile。

</br>

缺点

通过Maven Profile实现多环境配置的一个缺点是每次切换环境都必须重新构建,而重新构建可能会引入bug,我准备在下一篇文章中介绍另一种更加灵活的多环境配置解决方案,即Spring Profile。

相关文章

  • 如何通过Maven Profile进行多环境配置

    在系统开发,测试,到最终上线发布的过程中,切换环境是一个很常见的需求,不同环境中的参数(例如数据库配置、日志系统的...

  • maven profile多环境配置

    使用maven profile实现多环境配置(代码) maven profile 实现多环境可移植构建 在开发过程...

  • 5.SpringBoot多环境配置

    maven多环境配置示例 SpringBoot多环境配置 Profile是Spring针对不同环境不同配置的支持。...

  • 如何通过Spring Profile进行多环境配置

    在系统开发,测试,到最终上线发布的过程中,切换环境是一个很常见的需求,不同环境中的参数(例如数据库配置、日志系统的...

  • Spring注解@profile

    Spring中@profile与maven中的profile很相似,通过配置来改变参数。 例如在开发环境与生产环境...

  • maven多环境profile配置

    在实际开发项目中,常常有几种环境,一般情况下最少有三种环境:开发、测试、正式。 各个环境之间的参数各不相同,比如m...

  • centos7 安装 maven3.5

    下载maven 配置环境变量 vi /etc/profile source /etc/profile

  • Spring Profile

    Maven打包通过Profile来区分环境所需的配置; 1.pom.xml文件内配置: 2.application...

  • logback-结合spring profile使用

    什么是spring profile? spring profile就是spring的多环境配置功能,可以通过执行激...

  • Maven实现多环境切换

    不同环境需要不同的配置,利用Maven的profile标签,即可简单快捷地实现多环境切换。 使用步骤 资源配置文件...

网友评论

    本文标题:如何通过Maven Profile进行多环境配置

    本文链接:https://www.haomeiwen.com/subject/itqqxxtx.html