可以通过添加${spring-boot.version}
在banner.txt中包含Spring Boot的版本。
如何对/info
执行器端点执行相同的操作?我尝试将以下两个属性添加到应用程序属性中,但没有成功:
info.app.spring-boot.version=${spring-boot.version}
info.app.spring-boot.version=@spring-boot.version@
/info
端点将打印"${spring-boot. version}"(或"@spring-boot. version@"),但不解析占位符变量
我的下一个想法是为SpringBoot版本创建一个Maven属性,并在parent部分引用它,如下所示
<properties>
<spring.boot.version>1.5.3.RELEASE</spring.boot.version>
</properties>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>${spring.boot.version}</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
但是这并不起作用,因为Maven在处理<parent>
部分之后解析占位符变量
更新
以下方法确实有效,但并不理想:
@Component
public class MyInfoContributor implements InfoContributor {
@Override
public void contribute(Info.Builder builder) {
builder.withDetail("spring-boot.version", SpringBootVersion.getVersion());
}
}
2条答案
按热度按时间nhhxz33t1#
这应该行得通:
这样就不需要www.example.com属性了。app.info properties.
kadbb4592#
正如您在更新中提到的,
InfoContributor
可用于基于SpringBootVersion
中的值添加此属性:这看起来是一种添加细节的非常可靠的惯用方法。