首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring和Kotlin -将所有声明聚合到集合

Spring和Kotlin -将所有声明聚合到集合
EN

Stack Overflow用户
提问于 2019-03-15 09:11:13
回答 1查看 71关注 0票数 0

如何将队列、交换和绑定的所有声明聚合到Kotlin中的集合?

我有正在工作的Java代码,它以列表的形式返回声明:

代码语言:javascript
复制
@Bean
public List<Declarable> declaration() {
    return Arrays.asList(
            new Queue("queue-1"),
            new Queue("queue-2"),
            new Queue("queue-3"),
            new Queue("queue-4"),
            new FanoutExchange("fanout-1"),
            new FanoutExchange("fanout-2"));
}

但Kotlin上的相同代码不起作用:

代码语言:javascript
复制
@Bean
open fun declaration(): List<Declarable> {
    return Arrays.asList(
            Queue("queue-1"),
            Queue("queue-2"),
            Queue("queue-3"),
            Queue("queue-4"),
            FanoutExchange("fanout-1"),
            FanoutExchange("fanout-2"))
}

更新

在Java中,我有SpringVersion1.5.9和Kotlin2.1.1。因为2.1不推荐使用List<Declarable>并使用可执行命令

代码语言:javascript
复制
@Bean
open fun declaration(): Declarables {
    return Declarables(listOf(
            Queue("queue-1"),
            Queue("queue-2"),
            Queue("queue-3"),
            Queue("queue-4")))
}
EN

回答 1

Stack Overflow用户

发布于 2019-03-15 13:57:06

从2.1开始,使用Declarables来包装列表,而不是原始列表。

使用List<Declarable>是不可取的;它仍然是受支持的,但是您必须将admin的declareCollections属性设置为true。

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

https://stackoverflow.com/questions/55179049

复制
相关文章

相似问题

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