Spring Boot 2里程碑无法从application.properties中选择值

时间:2017-12-13 23:23:59

标签: spring-boot

我正在使用Gradle的Spring Boot(2.0.0.M7)的里程碑分支。 我在application.properties

中有一些值
app.name=MyApp
app.description=Hello from MyApp
app.version=1.0

在我的application-DEV.properties中我有

app.version=1.0-DEV

在我的SpringBootApplication中,我将值注入

@Value("${app.name}")
private String name;

@Value("${app.version}")
private String version;

我把application-default.properties放在当前目录中,后面有数据

app.version=1.0-DEVX
spring.profiles.active=DEV

当我从IDE运行SpringBootApplication时,它运行正常。 但是当我构建jar并将其作为java -jar MyApplication.jar运行时,它会给出错误

  

无法解决占位符' app.name'价值" $ {app.name}"

如果我将所有值复制到application-default.properties或application-DEV.properties中,它可以正常工作。 如果我使用Spring Boot 1.5.9-RELEASE或更早版本,它也可以正常工作。

我没有看到配置文件覆盖的任何文档已更改。也许这是一个错误?

1 个答案:

答案 0 :(得分:0)

有一个application.properties打包在另一个jar中导致了这个问题。从该jar中删除application.properties后,它按预期工作。