如何在application.yml中定义一个bean?

How to define a beans in application.yml?

我有两个 bean 的配置:

@Configuration
public class JmsConfiguration {

    @Bean
    PlatformTransactionManager jmsTransactionManager(ConnectionFactory jmsConnectionFactory) {
        return new JmsTransactionManager(jmsConnectionFactory);
    }

    @Bean
    public JmsComponent jms(ConnectionFactory jmsConnectionFactory) {
        return JmsComponent.jmsComponentClientAcknowledge(jmsConnectionFactory);
    }
}

bean 描述不是 spring-boot 方法。
我尝试在 application.yml 中定义并删除了代码,但它不起作用

camel:
    jms:
        session:
            acknowledge:
                 mode: CLIENT_ACKNOWLEDGE

我做错了什么?

请参阅 camel-jms spring 启动自动配置和选项名称的文档:https://camel.apache.org/components/latest/jms-component.html#_spring_boot_auto_configuration - 在那里您可以看到其名称 camel.component.jms.acknowledgement-mode-name

还要确保您在 pom.xml 中使用 camel-jms-starter 作为依赖项以使用 spring 启动器。