1 項目結構如下圖:local,test,prod是具體的環境
2 配置profile,默認為local
<profiles> <profile> <id>local</id> <properties> <profiles.active>local</profiles.active> </properties> <activation> <activeByDefault>true</activeByDefault> </activation> </profile> <profile> <id>test</id> <properties> <profiles.active>test</profiles.active> </properties> </profile> <profile> <id>prod</id> <properties> <profiles.active>prod</profiles.active> </properties> </profile> </profiles>
3 根據環境打包:
<resources> <resource> <directory>src/main/resources</directory> <includes> <include>application-${profiles.active}.properties</include> <include>application.properties</include> <include>logback-spring.xml</include> <include>static/**/*</include> </includes> <filtering>true</filtering>//必須設置為true,springboot那里的設置才有效果 </resource> </resources>
4:打包的插件 woff,woff2,ttf的配置是因為這種方式會對二進制資源損壞。所以將這幾種排除
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <configuration> <nonFilteredFileExtensions> <nonFilteredFileExtension>woff</nonFilteredFileExtension> <nonFilteredFileExtension>woff2</nonFilteredFileExtension> <nonFilteredFileExtension>ttf</nonFilteredFileExtension> </nonFilteredFileExtensions> <delimiters> <delimiter>@</delimiter> </delimiters> <useDefaultDelimiters>false</useDefaultDelimiters> </configuration> </plugin>
5 application.properties中的配置 這里的profiles.active要與第二步和第三步的名稱相同
spring.profiles.active= @profiles.active@
6 打包命令 這里打包的是測試環境 命令格式:clean install -P環境名