没有在路径下找打producer.xml文件
版本变更,旧有的api废弃,请使用合适的版本。
你注入的Destination的包导错了
在Maven中添加javax.jms-api的依赖即可
<dependency>
<groupId>javax.jms</groupId>
<artifactId>javax.jms-api</artifactId>
<version>2.0.1</version>
</dependency>
在发送消息的时候,要把消息set进去,才能在队列中取出来
老铁 是ActiveMQConnectionFactory
这个问题我同样遇到,提供一下我的解决办法。
我使用的spring版本是5.0.4.RELEASE,activemq-core版本5.7.0。这个版本的Spring需要使用JMS 2.0版本,但spring-jms的依赖没有自动导入JMS 2.0,而activemq-core会导入JMS 1.1的依赖,这就导致出现版本问题,
可以添加一下依赖解决,JMS 2.0 依赖如下
<dependency> <groupId>javax.jms</groupId> <artifactId>javax.jms-api</artifactId> <version>2.0.1</version> </dependency>
为了防止冲突,可以从activemq-core中去除JMS 1.1,pom 如下所示
<dependency> <groupId>org.apache.activemq</groupId> <artifactId>activemq-core</artifactId> <version>5.7.0</version> <exclusions> <exclusion> <artifactId>spring-context</artifactId> <groupId>org.springframework</groupId> </exclusion> <exclusion> <groupId>org.apache.geronimo.specs</groupId> <artifactId>geronimo-jms_1.1_spec</artifactId> </exclusion> </exclusions> </dependency>
未项目配置编译的目录classpath
spring集成jms的jar没有引进去!
最新 版的activemq只支持jdk 1.8
路径我看了没有问题,我用的eclipse和你用的软件不一样没关系吧
//调取配置文件
ApplicationContext context = new ClassPathXmlApplicationContext("resources/producer.xml");
我文件和老师存放的不一样,单独写了一个包放producer