使用maven profile指定配置文件打包適用多環境


新建maven項目,   在pom.xml中添加 profile節點信息如下:

<profiles>
        <profile>
            <!-- 開發環境 -->
            <id>dev</id>
            <properties>
                <environment>development</environment><!-- 節點名字environment是自己隨意取的 -->
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault><!-- 默認激活該profile節點-->
            </activation>
        </profile>

        <profile>
            <!-- 測試環境 -->
            <id>test</id>
            <properties>
                <environment>test</environment>
            </properties>
        </profile>
        <profile>
            <!-- 生產環境 -->
            <id>prod</id>
            <properties>
                <environment>production</environment>
            </properties>
        </profile>

    </profiles>
View Code

 

二、在項目中添加各環境需要的各種配置文件,分不同目錄存放, 分別是開發,測試, 生產 環境. 如下圖左邊部分所示

 

三、resource配置

<resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
            <resource>
                <directory>src/main/resources/${environment}</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                    <include>**/*.txt</include>
                </includes>
                <filtering>true</filtering>
            </resource>
        </resources>
View Code

動態指定打包的配置文件包含的目錄,接受參數 : ${environment}

也就是根據第四步中-Ptest取profile中id為test對應的environment的值

三、項目打包.

打包命令mvn package -Pdev來指定激活id為 dev 的profile節點, 這樣, 開發環境配置文件就會被打包.
開發: mvn package -Pdev (因為配置了默認激活dev部分, 所以也可以使用mvn package, 這與 mvn package -Pdev 效果相同)
測試: mvn package -Ptest
生產:mvn package -Pprod


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM