通常配置文件是放在src/main/resources下,build完之后會放在classes文件夾下,最終會打進jar包中。
如果是SPRING BOOT工程,部署時,要求配置文件不打進jar包中,要有sh啟動命令文件,最終產生一個ZIP包,包含所有需要的東西。這時就需要善用MAVEN的resource插件、assembly插件和jar插件了。
resource插件能重定義配置文件在output時的文件夾路徑,用profile的變量值替換配置文件中的占位符。
但要更改點位符的默認定義:
<properties>
<resource.delimiter>${}</resource.delimiter>
</properties>
jar插件能排除生成在classes文件夾中不要的文件被打進jar包中。
assembly插件能定義ZIP包中需要包含哪些文件。
<resources>
<resource>
<directory>src/main/bin</directory>
<!--表明此文件夾中如有占位符,則會取pom中的profile中的值代替-->
<filtering>true</filtering>
<includes>
<include>*.sh</include>
</includes>
</resource>
</resources>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<!--bin/文件夾不會被打進jar包-->
<excludes>
<exclude>bin/</exclude>
</excludes>
</configuration>
</plugin>
<fileSet>
<!--定義bin/文件夾被打進zip包-->
<directory>${build.outputDirectory}/bin</directory>
<outputDirectory>bin</outputDirectory>
<fileMode>0755</fileMode>
</fileSet>
maven打包加時間戳
https://blog.csdn.net/z410970953/article/details/50680603