一、该问题的重现步骤是什么?
1.项目prod环境启动会报错导致启动失败:
我按照你回复其他人的结果把application.yml中的ture改成false了,但是启动还是失败:
knife4j:
#启用
enable: false
配置文件信息application.yml:
#服务器配置
server:
#映射外网端口8019
port: 9333
undertow:
threads:
# 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
io: 16
# 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载
worker: 400
# 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
buffer-size: 1024
# 是否分配的直接内存
direct-buffers: true
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
#driver-class-name: org.postgresql.Driver
#driver-class-name: oracle.jdbc.OracleDriver
#driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
#driver-class-name: dm.jdbc.driver.DmDriver
druid:
# MySql、PostgreSQL、SqlServer、DaMeng校验
validation-query: select 1
# Oracle校验
#validation-query: select 1 from dual
validation-query-timeout: 2000
initial-size: 5
max-active: 20
min-idle: 5
max-wait: 60000
test-on-borrow: false
test-on-return: false
test-while-idle: true
time-between-eviction-runs-millis: 60000
min-evictable-idle-time-millis: 300000
stat-view-servlet:
enabled: true
login-username: blade
login-password: 1qaz@WSX
web-stat-filter:
enabled: true
url-pattern: /*
exclusions: '*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*'
session-stat-enable: true
session-stat-max-count: 10
profiles:
active: dev
# mybatis
mybatis-plus:
mapper-locations: classpath:org/springblade/**/mapper/*Mapper.xml
#实体扫描,多个package用逗号或者分号分隔
typeAliasesPackage: org.springblade.**.entity
#typeEnumsPackage: org.springblade.dashboard.entity.enums
global-config:
# 关闭MP3.0自带的banner
banner: false
db-config:
#主键类型 0:"数据库ID自增", 1:"不操作", 2:"用户输入ID",3:"数字型snowflake", 4:"全局唯一ID UUID", 5:"字符串型snowflake";
id-type: assign_id
#字段策略
insert-strategy: not_null
update-strategy: not_null
where-strategy: not_null
#驼峰下划线转换
table-underline: true
# 逻辑删除配置
# 逻辑删除全局值(1表示已删除,这也是Mybatis Plus的默认配置)
logic-delete-value: 1
# 逻辑未删除全局值(0表示未删除,这也是Mybatis Plus的默认配置)
logic-not-delete-value: 0
configuration:
map-underscore-to-camel-case: true
cache-enabled: false
jdbc-type-for-null: 'null'
#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 BladeX All Rights Reserved
#swagger公共信息
swagger:
title: BladeX 接口文档系统
description: BladeX 接口文档系统
version: 2.9.1.RELEASE
license: Powered By BladeX
license-url: https://bladex.vip
terms-of-service-url: https://bladex.vip
contact:
name: smallchill
email: smallchill@163.com
url: https://gitee.com/smallc
#flowable配置
flowable:
activity-font-name: \u5B8B\u4F53
label-font-name: \u5B8B\u4F53
annotation-font-name: \u5B8B\u4F53
check-process-definitions: false
database-schema-update: false
async-executor-activate: false
async-history-executor-activate: false
#报表配置
report:
enabled: false
database:
provider:
prefix: blade-
#oss默认配置
oss:
enabled: true
name: qiniu
tenant-mode: true
endpoint: http://prt1thnw3.bkt.clouddn.com
access-key: N_Loh1ngBqcJovwiAJqR91Ifj2vgOWHOf8AwBA_h
secret-key: AuzuA1KHAbkIndCU0dB3Zfii2O3crHNODDmpxHRS
bucket-name: bladex
#第三方登陆配置
social:
oauth:
GITHUB:
client-id: 233************
client-secret: 233************************************
redirect-uri: ${social.domain}/oauth/redirect/github
GITEE:
client-id: 233************
client-secret: 233************************************
redirect-uri: ${social.domain}/oauth/redirect/gitee
WECHAT_OPEN:
client-id: 233************
client-secret: 233************************************
redirect-uri: ${social.domain}/oauth/redirect/wechat
QQ:
client-id: 233************
client-secret: 233************************************
redirect-uri: ${social.domain}/oauth/redirect/qq
DINGTALK:
client-id: 233************
client-secret: 233************************************
redirect-uri: ${social.domain}/oauth/redirect/dingtalk
#blade配置
blade:
#token配置
token:
#是否有状态
state: true
single: true
#单用户登录范围
single-level: all
#token签名 使用 @org.springblade.test.SignKeyGenerator 获取
sign-key: t4aNzvA6Z2nf2HvJ5LUoUwfJqzaXqKno
#token加密 使用 @org.springblade.test.CryptoKeyGenerator 获取
crypto-key: 0rwygw10q9xM6bOOyQt8K6y6Jo32cW5D
#redis序列化方式
redis:
serializer-type: protostuff
#接口配置
api:
#报文加密配置
crypto:
#启用报文加密配置
enabled: false
#使用AesUtil.genAesKey()生成
aes-key: O2BEeIv399qHQNhD6aGW8R8DEj4bqHXm
#使用DesUtil.genDesKey()生成
des-key: jMVCBsFGDQr1USHo
#jackson配置
jackson:
#null自动转空值
null-to-empty: false
#大数字自动转字符串
big-num-to-string: true
#支持text文本请求,与报文加密同时开启
support-text-plain: false
#xss配置
xss:
enabled: true
skip-url:
- /blade-chat/weixin
- /blade-desk/notice/submit
- /blade-flow/model/submit
- /blade-cda/cdaXml/**
#安全框架配置
secure:
#接口放行
skip-url:
- /blade-test/**
- /test/**
- /hospital_scheduled_task/**
- /blade-user/**
- /hospital_Integrated_platform_bladex_boot/**
- /system/**
- /sso/**
- /empiMaster/forEachManualMerge
- /oauth2/token/**
- /oauth2/getCurrentUserInfo/**
- /blade-index/index/synchronizedYearIndex/**
- /blade-index/standardindexstatistics/testUpdateById/**
#授权认证配置
auth:
- method: ALL
pattern: /blade-chat/weixin/**
expression: "hasAuth()"
- method: POST
pattern: /blade-desk/dashboard/upload
expression: "hasTimeAuth(9, 17)"
- method: POST
pattern: /blade-desk/dashboard/submit
expression: "hasAnyRole('administrator', 'admin', 'user')"
#基础认证配置
basic:
- method: ALL
pattern: /blade-desk/dashboard/info
username: "blade"
password: "blade"
#动态签名认证配置
sign:
- method: ALL
pattern: /blade-desk/dashboard/sign
crypto: "sha1"
#多终端认证配置
client:
- client-id: sword
path-patterns:
- /blade-sword/**
- client-id: saber
path-patterns:
- /blade-saber/**
#多租户配置
tenant:
#多租户增强
enhance: true
#多租户授权保护
license: false
#动态数据源功能
dynamic-datasource: true
#动态数据源全局扫描
dynamic-global: false
#多租户字段名
column: tenant_id
#排除多租户逻辑
exclude-tables:
- blade_user
mybatis-plus:
page-limit: 60000
二、你期待的结果是什么?实际看到的又是什么?
麻烦帮忙看一下什么问题
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
版本:
2.9.1.RELEASE
四、请提供详细的错误堆栈信息,这很重要。
五、若有更多详细信息,请在下面提供。
复制这个文件到boot对应的包(手动创建 org.springblade.core.swagger ,然后文件拷贝过去,注意包目录和文件名要一致才会覆盖tool包里的逻辑):https://center.javablade.com/blade/BladeX-Tool/src/commit/f83e2e8ddb30c057183929d081e7e837b9d98b78/blade-starter-swagger/src/main/java/org/springblade/core/swagger/SwaggerLauncherServiceImpl.java#L40
修改 props.setProperty("knife4j.enable", "true"); 只有dev环境才执行,然后再启动试试
// 只有在开发环境下才启用 knife4j
if (profile.equals(AppConstant.DEV_CODE)) {
props.setProperty("knife4j.enable", "true");
}
扫一扫访问 Blade技术社区 移动端