我正在使用Maven作为构建工具来开发Spring Boot应用程序,其中我试图在Maven中使用资源过滤。它似乎不适用于其他春季项目。我该怎么办?
我在pom中使用spring-boot-starter作为父母。我在src / main / resource文件夹中有myconfig.properties文件。我在myconfig.properties文件中具有以下属性之一:
prop.first=@project.version@
这里@是应该使用的Spring-boot默认令牌过滤器,而不是$。
<project>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.1.RELEASE</version>
<relativePath/>
</parent>
<version>19.6.0</version>
......
<build>
.....
<resource>
<directory>/src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>**/myconfig.properties</include>
</includes>
</resource>
.....
</build>
.....
</project>
由于我的案例中的“ project.version”是19.6.0,因此在使用maven进行构建时,我期望myconfig.properties文件中的prop.first为:
prop.first=19.6.0
但是实际上,该属性永远不会被替换,并且在文件中仍然与以下内容相同:
prop.first=@project.version@
我在文档中的某处读到说Maven过滤不适用于Spring Boot中的src / main / resources。尽管使用maven进行相同的过滤可用于除spring-boot之外的其他类型的项目,但在我的情况下,进行资源过滤的另一种方法是什么?