ERROR spark.Spark - ignite failed with GraalVM build and spark versions 2.9.2 - 2.9.3
AlessioCoser opened this issue · comments
Alessio commented
Using this example:
https://github.com/AlessioCoser/graalvm_webserver/tree/hello-world
I'm able to run in a container a Spark Webserver built with GraalVm 21.2.0.
When I try to increase the version of spark to 2.9.2
or 2.9.3
I get this error:
[Thread-0] ERROR spark.Spark - ignite failed
java.lang.IllegalStateException: java.lang.NoSuchMethodException: no such method: org.eclipse.jetty.server.ForwardedRequestCustomizer$Forwarded.handleCipherSuite(HttpField)void/invokeVirtual
at org.eclipse.jetty.server.ForwardedRequestCustomizer.updateHandles(ForwardedRequestCustomizer.java:504)
at org.eclipse.jetty.server.ForwardedRequestCustomizer.<init>(ForwardedRequestCustomizer.java:82)
at spark.embeddedserver.jetty.SocketConnectorFactory.createHttpConnectionFactory(SocketConnectorFactory.java:113)
at spark.embeddedserver.jetty.SocketConnectorFactory.createSocketConnector(SocketConnectorFactory.java:48)
at spark.embeddedserver.jetty.EmbeddedJettyServer.ignite(EmbeddedJettyServer.java:108)
at spark.Service.lambda$init$2(Service.java:632)
at java.lang.Thread.run(Thread.java:829)
at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:567)
at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:192)
Caused by: java.lang.NoSuchMethodException: no such method: org.eclipse.jetty.server.ForwardedRequestCustomizer$Forwarded.handleCipherSuite(HttpField)void/invokeVirtual
at java.lang.invoke.MemberName.makeAccessException(MemberName.java:963)
at java.lang.invoke.MemberName$Factory.resolveOrFail(MemberName.java:1101)
at java.lang.invoke.MethodHandles$Lookup.resolveOrFail(MethodHandles.java:2030)
at java.lang.invoke.MethodHandles$Lookup.findVirtual(MethodHandles.java:1194)
at org.eclipse.jetty.server.ForwardedRequestCustomizer.updateForwardedHandle(ForwardedRequestCustomizer.java:516)
at org.eclipse.jetty.server.ForwardedRequestCustomizer.updateHandles(ForwardedRequestCustomizer.java:482)
... 8 more
Caused by: java.lang.NoSuchMethodError: org.eclipse.jetty.server.ForwardedRequestCustomizer$Forwarded.handleCipherSuite(org.eclipse.jetty.http.HttpField)
at com.oracle.svm.methodhandles.Util_java_lang_invoke_MethodHandleNatives.resolve(Target_java_lang_invoke_MethodHandleNatives.java:342)
at java.lang.invoke.MethodHandleNatives.resolve(MethodHandleNatives.java:214)
at java.lang.invoke.MemberName$Factory.resolve(MemberName.java:1070)
at java.lang.invoke.MemberName$Factory.resolveOrFail(MemberName.java:1098)
... 12 more
Here the graalvm native image build configuration:
native-image \
--static \
--enable-http \
--no-fallback \
--initialize-at-build-time=org.eclipse.jetty,org.slf4j,javax.servlet,org.sparkjava \
-cp app.jar \
-H:Name=app \
-H:Class=webserver.App \
-H:+ReportUnsupportedElementsAtRuntime \
-H:+ReportExceptionStackTraces