- pom中添加如下配置
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<includes>
<!-- // 分环境打包 todo-->
<!-- <include>application-${profileActive}.yml</include>-->
<include>*.properties</include>
<include>*.xml</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>${maven.plugin.version}</version>
<configuration>
<delimiters>
<delimiter>@</delimiter>
</delimiters>
<useDefaultDelimiters>false</useDefaultDelimiters>
</configuration>
</plugin>
</plugins>
2.application.properties加如下配置
version=@project.version@
artifactId=@project.artifactId@
或者xx.yml中添加如下配置
verson: @project.version@
artifactId: @project.artifactId@
直接run项目,再target看是否生效
或者直接mvn package 或者 install看jar中是否生效
用半天解决了这个问题,因为在application.properties中使用project.version,{project.version},project.version,{project.artifactId}获取值,然而并获取不到,另外一篇csdn的误导。
本文详细介绍了如何在Maven项目中配置资源文件的过滤,实现不同环境下的配置文件切换,并通过Maven插件将项目版本号和artifactId注入到application.properties或xx.yml配置文件中,确保应用在打包时能够正确读取到这些动态值。
762





