环境:
spring-boot:2.1.8
spring-cloud:Greenwich.SR3

问题描述:
在加载spring-cloud-starter-gateway网关依赖时控制台出现错误:

spring-cloud-starter-gateway:unknown

导入网关的依赖为:

<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>

依赖爆红的原因是既没有指定版本号,依赖管理器导入也错误,导成spring-cloud-alibaba-dependencies的了。而该组件是由spring-cloud管理的,这是两个不同的依赖管理器。

正确的依赖管理器:

<dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency></dependencies>
</dependencyManagement>

另外要注意两点:

1)在使用spring-boot组件时,spring-boot和spring-cloud的版本要对应:

2)gateway会与spring-boot-starter-web产生冲突。

原因是Gateway构建于 Spring 5+,基于 Spring Boot 2.x 响应式的、非阻塞式的 API。

而启动时默认使用了 spring-boot-starter-web 的内置容器,不支持非阻塞。

  • 问题解决:
    有两种解决方式:
    1、 排除 web 内置容器

    <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><!-- Maven整个生命周期内排除内置容器,排除内置容器导出成war包可以让外部容器运行spring-boot项目--><exclusions><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId></exclusion></exclusions>
    </dependency>
    

    2、 使用 spring-webflux 模块,webflux 有一个全新的非堵塞的函数式 Reactive Web 框架,可以用来构建异步的、非堵塞的、事件驱动的服务

    <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-webflux</artifactId>
    </dependency>
    

解决导入网关gateway依赖爆红相关推荐

  1. 离线状态下IDEA导入Maven依赖爆红解决

    hello,你好呀,我是灰小猿,一个超会写bug的程序猿! 一杯茶,一包烟,一个bug写一天! 平常在企业中进行项目开发的时候大部分都是在内网环境或者离线状态下进行的,这样就导致了使用Maven项目导 ...

  2. c3p0依赖导入失败问题(在使用到c3p0中的ComboPooledDataSource类的时候报错,依赖爆红)

    今天在学习过程中,在使用到c3p0中的ComboPooledDataSource类的时候找不到该类,因此分析是导入依赖出了问题,看到c3p0依赖爆红,重新导入了好几次还是失败,然后我决定去maven仓 ...

  3. idea创建项目pom依赖爆红

    idea创建项目pom依赖爆红可能是本地仓库没有jar包,或者没有改版本号 以下为解决方案: 1.导入依赖爆红可以先点击旁边的刷新按钮刷新一下,如果刷新没用可以对idea进行重启 2.如果没有效果可以 ...

  4. idea右边依赖爆红的解决方案

    1.找出 仓库里有没有 这个jar , 有的话,还是红的,那么就是包有问题,得删除 项目里面的 依赖,删除仓库里面的包,然后再重新引入依赖 2.有可能是你的 依赖写的就是错的,那更要 删除仓库里面的包 ...

  5. IDEA中pox.xml文件添加依赖爆红了

    对于一个新手来说,刚刚接触maven工程,不是特别理解pox.ml文件中,依赖为什么爆红,后来查到资料, 这里有一个仓库网址 https://mvnrepository.com/ 1.可能是我们的网速 ...

  6. SpringBoot创建项目依赖爆红

    出现图片中的爆红 进行下图三步操作,下载时间会比较长,等一会就好啦

  7. robotframework之解决导入httplibrary库一直标红的问题

    基于python3.7安装的robotframework,通过pip安装了httplibrary库 pip install robotframework-httplibrary 在RIDE里面导入ht ...

  8. IDEA导入javaWeb项目注解爆红问题

    出现此问题的原因一般都是jar包没有被扫描到: 解决办法: 1.在idea的设置里面如图: 如果有多个jar包文件夹就都给加进来 2.一般jdk版本正确的话,按照1的操作完之后,再重新编译一下就应该好 ...

  9. maven项目依赖报红解决办法

    maven项目依赖报红解决办法 检查 情况一: pom文件不报红,maven依赖爆红. 情况二: pom文件dependency项报红. 检查 首先检查pom文件引入依赖代码是否有误,在确认代码无误的 ...

最新文章

  1. Dockerfile的ONBUILD指令
  2. 变长结构体的临时笔记
  3. Windows10 家庭版——开启Hyper-V虚拟机
  4. WebSocket简单使用
  5. mac电脑开发环境配置
  6. Expression Blend学习5控件-TextButton
  7. c语言 博客园,C语言l|博客园作业10
  8. 固高运动控制卡的使用 2 关于IO的访问以及调用(C#版)
  9. Java俩个小球碰撞的代码_java实现小球碰撞功能
  10. 全民健身下的体育消费,是怎么升级的?
  11. H5分享到微信朋友圈与好友实现思路
  12. php 监听 扫描枪,Android监听扫描枪内容(一)
  13. 汇编语言学习:如何理解“物理地址=段地址X16+偏移地址”
  14. 计算机网络双绞线和交叉线的区别,直连线和双绞线有什么区别?
  15. python五子棋双人对弈_用python实现双人五子棋(终端版)
  16. 谢惠民,恽自求,易法槐,钱定边编数学分析习题课讲义23.2.3练习题参考解答[来自陶哲轩小弟]...
  17. 浏览记录-history
  18. WebDAV之葫芦儿·派盘 + PDF Expert
  19. 【python】使用python绘制地图时添加指北针
  20. MYSQL补充SQL语句

热门文章

  1. 解决es中must,must_not,should不能同时生效
  2. harness记忆_Java Microbenchmarking Harness的动手实践
  3. 力扣 面试题 17.09. 第 k 个数
  4. mc服务器小地图不显示玩家,我的世界旅行地图小地图不显示只显示地形 | 手游网游页游攻略大全...
  5. 「解决方案」企业能源管控平台
  6. python之getattr()函数
  7. 【Unity】UGUI系列教程——拼接一个简单界面
  8. MyEclipse 2016 Windows/Linux/Mac 版下载地址
  9. 数据存、管、用一体构建企业数据安全堡垒
  10. vue 封装公用函数