Maven使用之profile

来源:互联网 发布:安全课 防火知多少 编辑:程序博客网 时间:2024/05/01 04:12

企业开发环境通常会有多套,有开发环境,测试环境,预发布环境,生产环境,还有一种叫法是staging环境,sit环境,prep环境,production环境。在不同环境下通唱需要使用一些不同的配置,那么怎样做到这些配置相互独立,而且方便替换呢,maven提供的profile配置就可以实现。

<profiles>        <profile>            <id>dev</id>            <properties>                <env>dev</env>            </properties>            <activation>                <activeByDefault>true</activeByDefault>            </activation>        </profile>        <profile>            <id>test</id>            <properties>                <env>test</env>            </properties>        </profile>        <profile>            <id>production</id>            <properties>                <env>production</env>            </properties>        </profile>    </profiles>    ...    <build>        <filters>            <filter>../parent/src/main/filters/filter-${env}.properties</filter>        </filters>        <resources>            <resource>                <directory>src/main/resources</directory>                <filtering>true</filtering>                <excludes>                    <exclude>**/*.ftl</exclude>                    <exclude>**/*-dynamic.xml</exclude>                    <exclude>**/mybatis/**/*.xml</exclude>                </excludes>            </resource>        </resources>    </build>

在执行 mvn package -P dev的时候,会对resource下的directory所配置的目录,使用filter中的dev.properties进行变量替换。

其中会排除excludes下配置的文件。

0 0
原创粉丝点击