今天写项目遇到了gateway与mvc包冲突的问题,分享一下我的解决方案
spring gateway项目引入了commons
commons中引用了web
出现问题的原因是:gateway在其内部导入了webflux包,但是webmvc和webflux是不能同时出现的。
解决方法:
1.导入的时候忽略spring-boot-starter-web(一般来说,另一个项目中导入了web,一般是用到了web,所以这个方法可能会导致出现其他问题)
<dependency> <groupId>xyz.yeidi.practice</groupId> <artifactId>practice-api-commons</artifactId> <version>1.0-SNAPSHOT</version> <exclusions> <exclusion> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> </exclusion> </exclusions> </dependency>
2.在application.yml中加入配置
spring: #解决gateway 与 mvc 包冲突的问题 main: web-application-type: reactive