集成maven和Spring boot的profile功能
阿新 • • 發佈:2019-02-23
prope dev directory .profile 代碼 cati log build 使用
思路:maven支持profile功能,當使用maven profile打包時,可以打包指定目錄和指定文件,且可以修改文件中的變量。spring boot也支持profile功能,只要在application.properties文件中指定spring.profiles.active=xxx 即可,其中xxx是一個變量,當maven打包時,修改這個變量即可。
1。配置maven 的profile
<!-- 不同環境查找不同配置文件 --> <profiles> <profile> <id>dev</id> <properties> <profiles.active>dev</profiles.active> <maven.test.skip>true</maven.test.skip> </properties> <activation> <activeByDefault>true</activeByDefault> </activation> </profile> <profile> <id>sit</id> <properties> <profiles.active>sit</profiles.active> <maven.test.skip>true</maven.test.skip> </properties> </profile> <profile> <id>prd1</id> <properties> <profiles.active>prd1</profiles.active> <maven.test.skip>true</maven.test.skip> <scope.jar>provided</scope.jar> </properties> </profile> <profile> <id>prd2</id> <properties> <profiles.active>prd2</profiles.active> <maven.test.skip>true</maven.test.skip> <scope.jar>provided</scope.jar> </properties> </profile> </profiles>
其中profiles.active是我們定義的一個變量,可通過mvn命令指定,別人也能訪問
在build中配置可修改可訪問資源文件
<resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> <excludes> <exclude>application-dev.properties</exclude> <exclude>application-sit.properties</exclude> <exclude>application-prd1.properties</exclude> <exclude>application-prd2.properties</exclude> </excludes> </resource> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> <includes> <include>application-${profiles.active}.properties</include> <include>application.properties</include> </includes> </resource> </resources>
其中 ${profiles.active}是上面profile中指定的變量
2.配置springboot的profile
這是通過spring.profiles.active指定
在application.properties中指定[email protected]@,即可這樣就將maven與springboot的profile結合了
3.打包命令:mvn clean package -Dmaven.test.skip=true -P prod -e
集成maven和Spring boot的profile功能