原本是父子工程,一个父项目下面有多个模块。
在一个模块中,使用springboot3.0整合knife4j原本是可以扫描到controller包的,能进行测试。
但是在启类上加入了@ComponScan注解进行扫描其它模块的包之后,
原本的knife4j的配置就无效了,进入doc.html中,页面显示的是最初knife4j的页面,没有显示controller包下的众多Controller类
关于spring boot整合knife4j过程遇到的问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
关注 引自强大而免费的微信小程序:皆我百晓生。
可能是由于@ComponentScan注解导致的扫描路径变化,导致Knife4j无法正确扫描到Controller类。解决方法如下:
确保Knife4j的配置文件(如swagger.properties)在正确的位置,并且配置正确。
在启动类上,使用@Api标注模块的启动类,如:
@SpringBootApplication @Api(value = "模块名", tags = "模块名") public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
在使用@ComponentScan注解扫描其他模块的包之后,还需要使用@ImportKnife4j注解导入Knife4j的相关配置类,如:
@Configuration @ComponentScan(basePackages = "包名") @Import(Knife4jConfiguration.class) public class SwaggerConfig { // 配置其他Knife4j相关的配置 }
这样可以确保Knife4j的配置在使用@ComponentScan注解后仍然生效,并正确扫描到Controller类。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
- ¥15 安装quartus II18.1时弹出此error,怎么解决?
- ¥15 keil官网下载psn序列号在哪
- ¥15 想用adb命令做一个通话软件,播放录音
- ¥30 Pytorch深度学习服务器跑不通问题解决?
- ¥15 部分客户订单定位有误的问题
- ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法
- ¥15 Bug traq 数据包 大概什么价
- ¥15 在anaconda上pytorch和paddle paddle下载报错
- ¥25 自动填写QQ腾讯文档收集表