SpringBoot 中yml文件获取pom文件中的版本号
小于 1 分钟
SpringBoot 中yml文件获取pom文件中的版本号
1、yml配置
system:
version: @project.version@
如果你是application.properties
,你可以通过下面的方式来接收版本号:
application.version = ${project.version}
info.groupId: @project.groupId@
info.artifactId: @project.artifactId@
info.version: @project.version@
如果是application.yaml
,你可以通过下面的方式来接收版本号:
application:
version: '@project.version@'
2、pom.xml 配置
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<delimiters>@</delimiters>
<useDefaultDelimiters>false</useDefaultDelimiters>
</configuration>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
3、Java 获取版本号
@Value("${system.version}")
private String version;
4、报错
ERROR org.springframework.boot.SpringApplication -- Application run failed
org.yaml.snakeyaml.scanner.ScannerException: while scanning for the next token
found character '@' that cannot start any token. (Do not use @ for indentation)
解决
mvn clean 后重新启动
将配置加上单引号或双引号 @profileActive@ => '@profileActive@'
使用
info:
name: "@project.artifactId@"
version: '@project.version@'