NoSuchMethodError io.netty.util.AsciiString.cached
NoSuchMethodError io.netty.util.AsciiString.cached
我是 Java 的新手,并已着手维护使用 Java 编写的现有软件系统,该系统利用 Vertx.io 。当我调用 Vertx 网络客户端 .get() 方法时,我收到 netty 包错误。我用谷歌搜索了错误,但找不到任何东西。有人可以建议我做错了什么吗?
调用代码如下:
WebClient client = WebClient.create(vertx);
client
.get(port, server, path)
.timeout(5000)
.send(ar -> {
if (ar.succeeded()) {
...
例外情况:
java.lang.NoSuchMethodError: io.netty.util.AsciiString.cached(Ljava/lang/String;)Lio/netty/util/AsciiString;
at io.netty.handler.codec.http.HttpHeaderValues.<clinit>(HttpHeaderValues.java:28)
at io.netty.handler.codec.http.HttpUtil.<clinit>(HttpUtil.java:41)
at io.netty.handler.codec.http.EmptyHttpHeaders.<clinit>(EmptyHttpHeaders.java:29)
at io.netty.handler.codec.http.HttpHeaders.<clinit>(HttpHeaders.java:49)
at io.vertx.core.http.HttpHeaders.createOptimized(HttpHeaders.java:331)
at io.vertx.core.http.HttpHeaders.<clinit>(HttpHeaders.java:31)
at io.vertx.ext.web.client.impl.HttpRequestImpl.<init>(HttpRequestImpl.java:70)
at io.vertx.ext.web.client.impl.HttpRequestImpl.<init>(HttpRequestImpl.java:54)
at io.vertx.ext.web.client.impl.WebClientImpl.request(WebClientImpl.java:50)
at io.vertx.ext.web.client.impl.WebClientImpl.get(WebClientImpl.java:50)
at ... my calling class
事实证明,问题是由另一个 Vertx 库 (vertx-lang-ceylon) 引起的,我将其添加为依赖项以与 Chime 一起使用以进行调度。该版本比其他 vertx 库旧,这似乎引入了这个问题。
为了修复,我编辑了 build.gradle 文件并更改了
compile 'io.vertx:vertx-lang-ceylon:3.4.1'
至
compile 'io.vertx:vertx-lang-ceylon:3.5.0'
问题就解决了。
我是 Java 的新手,并已着手维护使用 Java 编写的现有软件系统,该系统利用 Vertx.io 。当我调用 Vertx 网络客户端 .get() 方法时,我收到 netty 包错误。我用谷歌搜索了错误,但找不到任何东西。有人可以建议我做错了什么吗?
调用代码如下:
WebClient client = WebClient.create(vertx);
client
.get(port, server, path)
.timeout(5000)
.send(ar -> {
if (ar.succeeded()) {
...
例外情况:
java.lang.NoSuchMethodError: io.netty.util.AsciiString.cached(Ljava/lang/String;)Lio/netty/util/AsciiString;
at io.netty.handler.codec.http.HttpHeaderValues.<clinit>(HttpHeaderValues.java:28)
at io.netty.handler.codec.http.HttpUtil.<clinit>(HttpUtil.java:41)
at io.netty.handler.codec.http.EmptyHttpHeaders.<clinit>(EmptyHttpHeaders.java:29)
at io.netty.handler.codec.http.HttpHeaders.<clinit>(HttpHeaders.java:49)
at io.vertx.core.http.HttpHeaders.createOptimized(HttpHeaders.java:331)
at io.vertx.core.http.HttpHeaders.<clinit>(HttpHeaders.java:31)
at io.vertx.ext.web.client.impl.HttpRequestImpl.<init>(HttpRequestImpl.java:70)
at io.vertx.ext.web.client.impl.HttpRequestImpl.<init>(HttpRequestImpl.java:54)
at io.vertx.ext.web.client.impl.WebClientImpl.request(WebClientImpl.java:50)
at io.vertx.ext.web.client.impl.WebClientImpl.get(WebClientImpl.java:50)
at ... my calling class
事实证明,问题是由另一个 Vertx 库 (vertx-lang-ceylon) 引起的,我将其添加为依赖项以与 Chime 一起使用以进行调度。该版本比其他 vertx 库旧,这似乎引入了这个问题。
为了修复,我编辑了 build.gradle 文件并更改了
compile 'io.vertx:vertx-lang-ceylon:3.4.1'
至
compile 'io.vertx:vertx-lang-ceylon:3.5.0'
问题就解决了。