一、该问题的重现步骤是什么?
1. 开源版启动auth报错
二、你期待的结果是什么?实际看到的又是什么?
期待启动成功,实际启动报错
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
产品:bladex开源版
版本:官方今天下载的最新开源版
操作系统:本地使用的是win10,nacos和mysql部署到了linux内网服务器
四、请提供详细的错误堆栈信息,这很重要。
错误信息:
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2021-04-28 16:36:22.998 ERROR 12048 --- [ main] o.s.b.d.LoggingFailureAnalysisReporter :
***************************
APPLICATION FAILED TO START
***************************
Description:
Parameter 0 of constructor in org.springblade.core.swagger.SwaggerAutoConfiguration required a bean of type 'com.github.xiaoymin.knife4j.spring.extension.OpenApiExtensionResolver' that could not be found.
Action:
Consider defining a bean of type 'com.github.xiaoymin.knife4j.spring.extension.OpenApiExtensionResolver' in your configuration.
五、若有更多详细信息,请在下面提供。
auth配置:
nacos配置文件:
nacos版本2.0.0
nacos配置列表:
将blade.yaml整个文件都放了进去
blade.yaml配置文件内容:
#服务器配置
server:
undertow:
# 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
buffer-size: 1024
# 是否分配的直接内存
direct-buffers: true
# 线程配置
threads:
# 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
io: 16
# 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载
worker: 400
#spring配置
spring:
cloud:
sentinel:
eager: true
devtools:
restart:
log-condition-evaluation-delta: false
livereload:
port: 23333
#feign配置
feign:
sentinel:
enabled: true
okhttp:
enabled: true
httpclient:
enabled: false
#对外暴露端口
management:
endpoints:
web:
exposure:
include: "*"
endpoint:
health:
show-details: always
#knife4j配置
knife4j:
#启用
enable: true
#基础认证
basic:
enable: false
username: blade
password: blade
#增强配置
setting:
enableSwaggerModels: true
enableDocumentManage: true
enableHost: false
enableHostText: http://localhost
enableRequestCache: true
enableFilterMultipartApis: false
enableFilterMultipartApiMethodType: POST
language: zh-CN
enableFooter: false
enableFooterCustom: true
footerCustomContent: Copyright © 2021 SpringBlade All Rights Reserved
#swagger配置信息
swagger:
title: SpringBlade 接口文档系统
description: SpringBlade 接口文档系统
version: 3.0.2
license: Powered By SpringBlade
licenseUrl: https://bladex.cn
terms-of-service-url: https://bladex.cn
contact:
name: smallchill
email: smallchill@163.com
url: https://gitee.com/smallc
#blade配置
blade:
xss:
enabled: true
skip-url:
- /weixin
secure:
skip-url:
- /test/**
client:
- client-id: sword
path-patterns:
- /sword/**
- client-id: saber
path-patterns:
- /saber/**
tenant:
column: tenant_id
tables:
- blade_notice
这个错误在于Knife4jAutoConfiguration类没有初始化,在SwaggerAutoConfiguration类引入的时候未找到
knife4j官网有这么一段话,配置knife4j.enable=true后就可以使用bean注入方式引入
框架封装在这对他进行了引用
我看你的配置文件已经有knife4j.enable=true了,为了防止nacos本身的问题,你把nacos配置文件全部清掉重新添加一份再试试。
另外需要查看确认下这个类是否初始化成功,到如下打个断点跟踪下看看
nacos重新配置以后还是会出现相同的问题,
这个地打了断点,但是启动的时候并未进入此断点。
另外希望QQ:1272154962能尽快回复下消息,有关购买联合版的一些问题需要咨询一下
一定要开启,不开启就报这个错
扫一扫访问 Blade技术社区 移动端