如何在JDK8上使用SPDY运行Jetty? [英] How to run Jetty with SPDY on JDK8?
问题描述
我们有几天JDK8。我试图用SPDY服务器运行Jetty。在JDK8中没有NPN支持,所以它结束于:
For a few days we have JDK8. I have tried to run Jetty with SPDY server. In JDK8 there is no NPN support so it ends with:
[qtp22068985-16-selector-ServerConnectorManager@12e7b0e/1] WARN
org.eclipse.jetty.io.SelectorManager - Exception while notifying connection SslConnection@e1448a{NEED_UNWRAP,eio=-1/-1,di=-1} ->
NPNServerConnection@382d40{IDLE}
java.lang.NoSuchMethodError:
sun.security.ssl.HandshakeHash.<init>(ZZLjava/util/Set;)V
at sun.security.ssl.Handshaker.activate(Handshaker.java:493)
我运行了它CLASSPATH上的 npn-boot-1.1.6.v20130911.jar
适用于最新的JDK7。
I have run it with npn-boot-1.1.6.v20130911.jar
on CLASSPATH which works with newest JDK7.
有没有关于如何在JDK8上使用SPDY运行Jetty的解决方法?
Is there any workaround on how to run Jetty with SPDY on JDK8?
推荐答案
我是Jetty中NPN的实现者。
I am the implementer of NPN in Jetty.
NPN是通过修改JDK中缺少TLS扩展API的JDK类来实现的。 NPN版本严格匹配文档中指定的JDK版本。
NPN is implemented by modifying the JDK classes for the lack of a TLS Extension API in the JDK. The NPN versions match strictly a JDK version as specified in the documentation.
对于JDK 8,我们不打算支持NPN。相反,我们将支持作为NPN继承者的ALPN,并将ALPN实现反向移植到JDK 7.
For JDK 8 we don't plan to support NPN. Instead, we will support ALPN which is the successor to NPN, and backport the ALPN implementation to JDK 7 too.
ALPN的实现已在分支中完成,但是还没有集成到Jetty的主要版本中。
The implementations for ALPN are already done in a branch, but not integrated yet in the main Jetty build.
你需要耐心等待一段时间,我们需要完成一些事情并将ALPN集成到Jetty master中。完成后,我们将博客了解。
You have to be patient for a little while, we need to finalize a bunch of things and integrate ALPN in Jetty master. When that is done we'll blog about.
这篇关于如何在JDK8上使用SPDY运行Jetty?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!