项目场景:
项目架构为Springboot+SpringCloud+nacos+dubbo,微服务为Gateway,准备加入SpringSecurity时出现问题
问题描述
在之前,由于spring-cloud-starter-gateway
和spring-boot-starter-web
同时引入会导致包冲突,出现
org.springframework.cloud.gateway.config.GatewayAutoConfiguration required a bean of type 'org.springframework.http.codec.ServerCodecConfigurer' that could not be found.
这样的错误,因此使用的是spring-boot-starter-test
依赖
但是在引入SpringSecurity后会报
java: can not access javax.servlet.Filter
或者
java:无法访问javax.servlet.Filter
找不到javax.servlet.Filter的类文件
解决方案:
提示 cannot access javax.servlet.Filter
需要通过增加spring-boot-starter-web
依赖解决,但是添加starter-web依赖后又会冲突。
解决办法:
- 查看自己的Springboot版本与SpringCloud版本是否对应,可参考:SpringCloud与SpringBoot的版本对应关系
- 增加servlet依赖
我是通过这个方法解决的,直接在pom文件添加javax.servlet-api
依赖即可