使用SpringCloud gateway 时 出现 java.lang.BootstrapMethodError: java.lang.NoClassDefFoundError...报错

问题描述:

在使用SpringCloud gateway 启动项目时 ,控制台报如下错误;

2020-02-24 17:33:12.221  WARN 5312 --- [ctor-http-nio-4] i.n.c.AbstractChannelHandlerContext      :
An exception 'java.lang.BootstrapMethodError: java.lang.NoClassDefFoundError: reactor/netty/NettyPipeline$SendOptions' [enable DEBUG level for full stacktrace] was thrown by a user handler's exceptionCaught() method while handling the following exception:

java.lang.BootstrapMethodError: java.lang.NoClassDefFoundError: reactor/netty/NettyPipeline$SendOptions
	at org.springframework.cloud.gateway.filter.NettyRoutingFilter.lambda$filter$3(NettyRoutingFilter.java:134) ~[spring-cloud-gateway-core-2.1.5.RELEASE.jar:2.1.5.RELEASE]
	at reactor.netty.http.client.HttpClientConnect$HttpClientHandler.requestWithBody(HttpClientConnect.java:580) ~[reactor-netty-0.9.4.RELEASE.jar:0.9.4.RELEASE]
......

解决问题

经检查发现,是由于在建 gateway 项目时使用 Spring Initializr 快速建立,SpringBoot 版本自动选用最新版本,Gateway是2.1.5.RELEASE,两者版本不兼容 导致的。
将 SpringBoot 版本降至 2.1.14.RELEASE 问题解决。

微信可以搜【Java猿记】公众号,回复【面试】即可领取283页PDF 面试资料

你可能感兴趣的:(BUG记录总结,spring,boot,java,cloud,gateway,spring)