多model项目下,某个项目引用了公共lib下的service, 其他模块想不受影响的启动解决办法

简介: 多model项目下,某个项目引用了公共lib下的service, 其他模块想不受影响的启动解决办法
问题描述:
  • 现在有一个项目,有各个子model组成,其中有一个公用的lib包,放置一些公用的util和service供子模块使用, 但是现在产生了一个问题. A模块,B模块和C模块共同引用了一个service,该service负责发送异步的mq消息.当该service在lib包下时,除了引用的ABC模块,其他的DEFG...都需要在配置文件里面加上mq的配置文件,否则的话对应的DEF等无法启动,如何保证service即在lib下,同时其他非使用的model不需要写配置文件
解决办法

@ConditionalOn相关注解: 此注解可以实现相关功能,参考地址:@ConditionalOn

  1. 在ABC子model的配置文件内引入相关的配置文件
  2. lib下的service使用 @ConditionalOnProperty指定引入的mq配置的前缀,表示当mq配置存在时把该service注入工厂
  3. @ConditionalOnBean 指定name,表示当指定的类存在时,本类注入工厂


相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
6月前
|
Kubernetes 负载均衡 网络协议
k8s学习-Service(概念、模板、创建、外部代理、删除等)
k8s学习-Service(概念、模板、创建、外部代理、删除等)
337 0
|
11月前
|
Kubernetes 网络协议 Docker
k8s教程(service篇)-资源定义详解
k8s教程(service篇)-资源定义详解
73 0
|
3月前
|
Java
【Azure 应用服务】如何查看App Service Java堆栈JVM相关的参数默认配置值?
【Azure 应用服务】如何查看App Service Java堆栈JVM相关的参数默认配置值?
【Azure 应用服务】如何查看App Service Java堆栈JVM相关的参数默认配置值?
|
3月前
|
缓存 Go
Go引用包版本更新但是被引用的包的子包并没有出现在vendor中的问题和解决方案
文章讨论了在Go模块项目中升级依赖包版本时遇到的子包未出现在vendor目录的问题,并提供了直接删除旧版本引用并重新执行`go mod vendor`的解决方案。
38 0
|
6月前
|
存储
LabVIEW使用VI Package Manager(VIPM)下载和管理附加组件
LabVIEW使用VI Package Manager(VIPM)下载和管理附加组件
286 1
|
SQL Windows
web未能加载文件或程序集“XXX”或它的某一个依赖项
如果你将应用程序生成x86而不是Any CPU时,在64位操作系统中不会出错错误,而在32位操作系统中可能会出现以下错误 “/xxxxx”应用程序中的服务器错误。 -------------------------------------------------------------------------------- 未能加载文件或程序集“xxx”或它的某一个依赖项。试图加载格式不正确的程序。
318 0
web未能加载文件或程序集“XXX”或它的某一个依赖项
ts解决依赖引入报错:无法找到模块“xxxxxx”的声明文件的报错问题
ts解决依赖引入报错:无法找到模块“xxxxxx”的声明文件的报错问题
1880 0
|
关系型数据库 MySQL
egg 项目里从 Service 内获取模拟数据
egg 项目里从 Service 内获取模拟数据
128 0
egg 项目里从 Service 内获取模拟数据
|
域名解析 网络协议 关系型数据库
无需修改代码,用 fcapp.run 运行你的 REST 应用
解锁客户不修改代码部署存量REST、网页应用场景,解决客户函数调用返回404问题,支持标准的网关产品与开源组件集成函数计算。
无需修改代码,用 fcapp.run 运行你的 REST 应用
|
安全
Docsify CLI v4.4.2版本发布,增加初始化时重写文件问询
此次版本发布,更新了旧版本依赖项中的漏洞,同时也添加一些功能和修复了一个 Bug
177 0