欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

解决springboot+activemq启动报注解错误的问题

时间:2022-09-10 09:20:05|栏目:JAVA代码|点击:

springboot+activemq启动报注解错误

Description:
Field jmsMessagingTemplate in com.haozz.demo.mq.PromoteActProducer required a bean of type 'org.springframework.jms.core.JmsMessagingTemplate' that could not be found.

The injection point has the following annotations:
- @org.springframework.beans.factory.annotation.Autowired(required=true)

The following candidates were found but could not be injected:
- Bean method 'jmsMessagingTemplate' in 'JmsAutoConfiguration.MessagingTemplateConfiguration' not loaded because Ancestor org.springframework.boot.autoconfigure.jms.JmsAutoConfiguration did not match

Action:
Consider revisiting the entries above or defining a bean of type 'org.springframework.jms.core.JmsMessagingTemplate' in your configuration.

原因总结有以下3点原因:

1.spring.activemq.pool.enabled=true,线程池开启,后面有空格,且没有引入线程池包

       <dependency>
            <groupId>org.apache.activemq</groupId>
            <artifactId>activemq-pool</artifactId>
        </dependency>

2.springboot版本问题不支持,建议用2.0版本启动

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.1.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>

猜想:估计是因为2.1.0+版本有自己的线程池管理,导致冲突

3.spring.activemq.pool.enabled=false,关闭线程池

springboot整合activemq踩过坑

启动时候就关闭了

配置如下

server:
 port: 8762
#    context-path: /memeber
eureka:
 client:
   service-url:
     defaultZone: http://localhost:8761/eureka/
spring:
   application:
       name: member
   redis:
       host: 127.0.0.1
       password: 123456
       port: 6379
       pool:
           max-idle: 100
           min-idle: 1
           max-active: 1000
           max-wait: -1
   datasource:
       name: test1
       url: jdbc:mysql://127.0.0.1:3306/dandan-member
       username: root
       password: 123456
       type: com.alibaba.druid.pool.DruidDataSource
       driver-class-name: com.mysql.jdbc.Driver
       filters: stat
       maxActive: 20
       initialSize: 1
       maxWait: 60000
       minIdle: 1
       timeBetweenEvictionRunsMillis: 60000
       minEvictableIdleTimeMillis: 300000
       validationQuery: select 'x'
       testWhileIdle: true
       testOnBorrow: false
       testOnReturn: false
       poolPreparedStatements: true
       maxOpenPreparedStatements: 20
    ##activemq连接信息
activemq:
   broker-url: tcp://localhost:61616
   in-memory: true
   pool:
     enabled: false
##队列
messages:
    queue: messages_queue

解决如下

原本activemq 没有在spring.后面直接在前面了,与spring同级了

解决后配置如下

server:
 port: 8762
#    context-path: /memeber
eureka:
 client:
   service-url:
     defaultZone: http://localhost:8761/eureka/
spring:
   application:
       name: member
   redis:
       host: 127.0.0.1
       password: 123456
       port: 6379
       pool:
           max-idle: 100
           min-idle: 1
           max-active: 1000
           max-wait: -1
   datasource:
       name: test1
       url: jdbc:mysql://127.0.0.1:3306/dandan-member
       username: root
       password: 123456
       type: com.alibaba.druid.pool.DruidDataSource
       driver-class-name: com.mysql.jdbc.Driver
       filters: stat
       maxActive: 20
       initialSize: 1
       maxWait: 60000
       minIdle: 1
       timeBetweenEvictionRunsMillis: 60000
       minEvictableIdleTimeMillis: 300000
       validationQuery: select 'x'
       testWhileIdle: true
       testOnBorrow: false
       testOnReturn: false
       poolPreparedStatements: true
       maxOpenPreparedStatements: 20
    ##activemq连接信息
   activemq:
       broker-url: tcp://localhost:61616
       in-memory: true
       pool:
          enabled: false
##队列
messages:
    queue: messages_queue

建议。yml缩进要四个字节。一个字节不容易分辨

上一篇:Mybatis 如何批量删除数据的实现示例

栏    目:JAVA代码

下一篇:Jmerte分布式压测及分布式压测配置教程

本文标题:解决springboot+activemq启动报注解错误的问题

本文地址:http://www.codeinn.net/misctech/213248.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有