在整合mq期间出现了以上错误,一直装载不到
最终发现是依赖的问题
原本依赖如下:
<!-- RabbitMQ --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> <scope>provided</scope> </dependency>
修改后
<!-- RabbitMQ --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency>
考虑到可能有一个本地的开发环境(比如本地电脑)和一个部署环境(比如生产服务器)。在 Maven 或 Gradle 配置中,可以定义依赖项的作用范围。在这种情况下,将 RabbitMQ 依赖项的作用范围定义为 provided
,这意味着假定在部署环境中已经有 RabbitMQ 的运行时环境,因此不需要将 RabbitMQ 库打包到你的应用程序中。
但是,如果在本地运行应用程序时遇到了错误,并且错误消息涉及到缺少 RabbitMQ 的相关类或库,这可能是因为在的本地开发环境中没有安装或配置 RabbitMQ。在这种情况下,即使你将依赖项定义为 provided
,也不会解决问题,因为本地环境没有 RabbitMQ 库可用。
相反,当去掉 provided
作用范围后,Maven 或 Gradle 会将 RabbitMQ 库包含在的应用程序中,这样就可以在本地环境中使用了。
provided
作用范围通常用于指定在部署环境中已经存在的库或依赖项,而不需要将其打包到应用程序中。但是,这也要求本地开发环境与部署环境相匹配,并且具有相同的依赖项配置。