使用maven profile实现多环境配置

1.本项目有三种环境:pro、test、dev 。maven的profile配置如下:

    <profiles>
        <!--  本地开发环境-->
        <profile>
            <id>dev</id>
            <properties>
                <profiles.active>dev</profiles.active>
                <deploy.url>http://localhost:9001/</deploy.url>
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
        <!--  本地测试环境-->
        <profile>
            <id>test</id>
            <properties>
                <profiles.active>test</profiles.active>
                <deploy.url>http://localhost:9001/</deploy.url>
            </properties>
        </profile>
        <!--  正式上线环境-->
        <profile>
            <id>pro</id>
            <properties>
                <profiles.active>pro</profiles.active>
                <deploy.url>http://localhost:9001/</deploy.url>
            </properties>
        </profile>
    </profiles>

 2.配置文件目录:



 3.maven的资源配置:

    <build>
        <finalName>gcc-portal</finalName>
        <resources>
            <resource>
                <!-- 资源根目录排除各环境的配置,使用单独的资源目录来指定 -->
                <directory>src/main/resources</directory>
                <includes>
                    <include>spring/*</include>
                </includes>
                <excludes>
                    <exclude>dev/*</exclude>
                    <exclude>test/*</exclude>
                    <exclude>pro/*</exclude>
                </excludes>
            </resource>
            <!--    各环境的配置-->
            <resource>
                <directory>src/main/resources/${profiles.active}</directory>
            </resource>
        </resources>
        <plugins>
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat-maven-plugin</artifactId>
                <version>${tomcat-maven-plugin-version}</version>
                <configuration>
                    <url>${deploy.url}</url>
                    <server>tomcat</server>
                    <path>/yuhwb</path>
                </configuration>
            </plugin>
        </plugins>
    </build>

 4.构建或发布:

mvn clean package -U -DskipTests -P  ${profiles.active}

猜你喜欢

转载自yuhaiwei-bj.iteye.com/blog/2246618