1. 場景描述
springboot+maven打包,項目中經常用到不同的環境下打包不同的配置文件,比如連接的數據庫、配置文件、日志文件級別等都不一樣。
2. 解決方案
在pom.xml文件中定義
2.1 真實代碼
<project>
<dependencies>
</dependencies>
<profiles>
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<deploy.type>dev</deploy.type>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<deploy.type>prod</deploy.type>
</properties>
</profile>
</profiles>
<build>
<resources>
<resource>
<directory>src/main/profiles/${deploy.type}</directory>
</resource>
<resource>
<directory>src/main/resources/</directory>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.0.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
2.2 代碼說明
重點是這行代碼,結合maven就能打包不同的文件夾。
<resource>
<directory>src/main/profiles/${deploy.type}</directory>
</resource>
2.3 效果圖:
2.3.1 程序目錄
2.3.2 maven目錄
需要打包那個環境的,打鈎后雙擊就可以了。