我在启动apache flume时遇到此异常:
2021-04-20 20:04:11,463 (qtp39926397-25) [WARN - org.eclipse.jetty.server.HttpChannel.handleException(HttpChannel.java:600)]
java.lang.NoSuchMethodError: org.eclipse.jetty.util.Attributes.unwrap(Lorg/eclipse/jetty/util/Attributes;)Lorg/eclipse/jetty/util/Attributes;
at org.eclipse.jetty.server.Request.recycle(Request.java:1870)
at org.eclipse.jetty.server.HttpChannel.recycle(HttpChannel.java:309)
at org.eclipse.jetty.server.HttpChannelOverHttp.recycle(HttpChannelOverHttp.java:81)
at org.eclipse.jetty.server.HttpConnection.onCompleted(HttpConnection.java:435)
at org.eclipse.jetty.server.HttpChannel.onCompleted(HttpChannel.java:743)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:363)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:272)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)
at java.lang.Thread.run(Thread.java:748)
我正在使用 <jetty.version>9.4.30.v20200611</jetty.version>
.
问题是,它在我的本地机器上运行良好,但当我尝试在虚拟机上运行我的应用程序时,它抛出了这个错误不知道是什么问题?
我使用 mvn dependency:tree -Dincludes=org.eclipse.jetty:jetty-util
没有发现任何不同的版本。
1条答案
按热度按时间v09wglhw1#
您在apache flume上的部署使用的是早于9.4.29的jetty版本(其中
Attributes.unwrap()
是最早引进的)。仔细检查jetty服务器的启动日志,它将宣布它认为正在运行的版本。
例子: