2017-04-07 84 views
0

我创建了一个名为FileConfig与以下标注类:如何配置没有locations配置属性的Spring java环境?

file.config.location = fileinfo.yaml 

很显然,我的编译器说,该地区酒店:“application.properties”中存在

@ConfigurationProperties(locations = { "classpath:application.properties" , "${file.config.location}" }) 

下面一行不赞成使用其他位置直接配置环境。有人可以帮助我如何配置环境,使FileConfig中的变量使用'fileinfo.yaml'文件的内容初始化

使用@PropertySource("classpath:testapplication.properties")而不是使用上面的代码行会产生错误。

+0

http://stackoverflow.com/questions/36294866/spring-boot-add-new-yml-files-to-application-config –

回答

0

如果我正确理解您的问题,请在application.properties文件中指定fileInfo.yaml文件的位置。这个值应该被设置为你的房产类别FileConfig的位置。

我认为那是不可能的,因为SpEL表达式没有被评估。

在这里,Java文档的从@ConfigurationProperties部分:

诠释外部配置。如果要绑定和验证某些外部属性(例如,来自.properties文件),请将其添加到@Configuration类中的类定义或@Bean方法。

请注意,与@Value相反,由于 属性值已外化,因此不评估SpEL表达式。