【maven】使用maven分环境打包

在开发时,我们总会在开发环境,测试环境、以及生产环境之间进行切换,每次打包时,我们都需要修改对应的配置,这样的方法不仅繁琐,而且容易犯错。基于这种情况,我们可以通过传入参数,打不同环境的包,来对不同环境进行发布

我们首先准备三个环境的配置文件: dev 、test、pro,目录结构如下:
【maven】使用maven分环境打包
接下来我们在pom.xml中使用profiles对不需要的文件进行exclude、默认加载文件的配置以及传参修改加载文件的配置

<profiles>
        <profile>
            <id>test</id>
            <properties>
                <profiles.active>test</profiles.active>
            </properties>
        </profile>

        <profile>
            <id>pro</id>
            <properties>
                <profiles.active>pro</profiles.active>
            </properties>
        </profile>

        <profile>
            <id>dev</id>
            <properties>
                <profiles.active>dev</profiles.active>
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
</profiles>


<build>
        <resources>
            <resource>
                <directory>${basedir}/src/main/resources</directory>
                <excludes>
                    <exclude>conf/**</exclude>
                </excludes>
            </resource>
            <resource>
                <directory>src/main/resources/conf/${profiles.active}</directory>
            </resource>
        </resources>
    </build>

接下来我们通过传入不同的参数构建不同的包,默认为test
开发环境: dev

mvn clean install -P dev

【maven】使用maven分环境打包
生产环境:pro

mvn clean install -P pro

【maven】使用maven分环境打包