maven動態選擇配置文件的打包


pom build節點下面添加resource配置:

     <resources>
            <resource>
                <directory>src/main/resources/</directory>
                <filtering>true</filtering>
                <includes>
                    <include>**/*.properties</include>
                </includes>
            </resource>
            <resource>
                <directory>src/main/resources/</directory>
                <filtering>false</filtering>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
        </resources>

resource的filtering屬性用來表示資源文件中的占位符是否需要被替換,true為需要替換。 上面的定義是所有的.properties文件中的EL表達式占位符都會在打包時動態替換,所有的.xml文件則不會替換占位符。 接下來我們配置兩個profile,一個是測試環境,一個是正式環境配置:

<profiles>
        <profile>
            <id>dev</id>
            <properties>
                <jest.urls>http://n2:9200,http://n4:9200</jest.urls>
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
 
        <profile>
            <id>production</id>
            <properties>
                <jest.urls>http://192.168.3.241:9200,http://192.168.3.242:9200</jest.urls>
            </properties>
        </profile>
    </profiles>
    

gistfile1.txt

我們再在src/main/resources目錄下面創建一個config.properties文件,內容如下:
jest.urls=${jest.urls}
然后我們執行maven打包命令:clean package -DskipTests -Pdev

查看對應的jar包里面的config.properties文件,可以發現占位符已經被替換成了profile dev中配置的jest.urls的值。
---------------------
作者:xiao_jun_0820
來源:CSDN
原文:https://blog.csdn.net/xiao_jun_0820/article/details/49864285
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

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



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