首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >@Value with List in Kotlin (来自YAML )

@Value with List in Kotlin (来自YAML )
EN

Stack Overflow用户
提问于 2019-03-15 08:07:16
回答 1查看 3.3K关注 0票数 2

我正在尝试用Kotlin初始化Spring项目中YAML文件中的属性列表。

对于普通字符串,它可以正常工作,但是当我试图插入一个包含以下错误的列表时,它会失败:

代码语言:javascript
代码运行次数:0
运行
复制
Unexpected exception during bean creation; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'foo.bars' in value "${foo.bars}"

Kotlin代码有以下构造函数参数

代码语言:javascript
代码运行次数:0
运行
复制
@Value("\${foo.bars}")
val foobars: List<String>

yaml文件具有以下值:

代码语言:javascript
代码运行次数:0
运行
复制
foo:
  bars:
  - test1
  - test2

我需要在列表和普通字符串之间做一些不同的事情吗?

EN

回答 1

Stack Overflow用户

发布于 2019-06-19 13:57:04

对于Kotlin来说,描述的解决方案here可以做一些修改:

代码语言:javascript
代码运行次数:0
运行
复制
@Component
@ConfigurationProperties("foo")
class FooBarsProperties {
  lateinit var bars: List<String>
}

只需在需要的地方注入FooBarsProperties即可。不要忘记将@EnableConfigurationProperties添加到一些配置类中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55178102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档