【发布时间】:2018-06-02 21:44:16
【问题描述】:
我正在尝试用 spark 运行一个简单的脚本,它给了我
java.lang.NoSuchMethodError: io.netty.buffer.PooledByteBufAllocator.metric()Lio/netty/buffer/PooledByteBufAllocatorMetric;
我在这个帖子上看到了:Spark 2.3.0 netty version issue: NoSuchMethod io.netty.buffer.PooledByteBufAllocator.metric()
但即使在我将较新的 netty 模块添加到我的 pom.xml 之后,我仍然可以看到它。我的 pom.xml 看起来像这样:
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
<version>4.1.17.Final</version>
</dependency>
我也尝试过使用 spark 2.2.1,但这给了我:
java.lang.IllegalArgumentException:要求失败:只能调用 正在运行的 MetricsSystem 上的 getServletHandlers
所以我有点卡住了,有没有其他配置可以尝试?
【问题讨论】:
-
在您的
pom.xml中使用netty-all 4.1.17.Final,您应该看不到NoSuchMethodError。也许你可以运行mvn clean compile再试一次。 -
你是对的,这个错误已经自行消失了。我现在看到一个不同的错误,谢谢!
标签: java apache-spark