我已经设置了spring-boot-actuator和spring-cloud-config。我设置了类似于以下内容的各种属性:
info.app.name=@project.name@
info.app.version=@project.version@如果我把这些属性放在application.properties中,那么我会得到:
{
"app" : {
"name" : "project-name",
"version" : "1.2.3",
<more is ommitted>但是如果我把它放入spring-cloud-config,我会得到如下结果:
{
"app" : {
"name" : "@project.name@",
"version" : "@project.version@",
<more is ommitted>我不明白为什么会这样,因为我希望config为它提供服务,并让actuator来扩展它。这是一个bug吗?
谢谢。
发布于 2021-03-18 01:25:47
application.properties中的@project.name@和@project.version@的分辨率是performed at build time,而不是在运行时。因此,当您的应用程序运行时,jar文件中的application.properties包含:
info.app.name=project-name
info.app.version=1.2.3Spring Boot或Spring Cloud Config中没有任何东西可以在运行时像@project.name@一样解析占位符,所以当这些属性从Config Server中拉出时,您将获得这些属性的文字值。
https://stackoverflow.com/questions/66655416
复制相似问题