我正在尝试运行jetty 9.2.4版本,但我得到以下异常。相同的服务器设置在我的本地设置(mac),登台环境(linux,ubutnu)上正常工作,但在我试图设置它的另一台服务器上不起作用。请求表明可能出现的问题。我几乎一无所知。
:/ WEBCHAT / jetty-distribution-9.2.4.v20141103 #java -jar start.jar 2014-12-17 08:24:11.695:INFO :: main:记录初始化@ 1221ms 2014-12-17 08:24:11.947:警告:oejs.HomeBaseWarning:main:这个Jetty实例不是从一个单独的{jetty.base}目录运行的,不建议这样做。请参阅http://www.eclipse.org/jetty/documentation/current/startup.html处的文档 2014-12-17 08:24:12.848:INFO:oejs.Server:main:jetty-9.2.4.v20141103 2014-12-17 08:24:12.879:INFO:oejs.AbstractNCSARequestLog:main:已打开/WEBCHAT/jetty-distribution-9.2.4.v20141103/logs/2014_12_17.request.log 2014-12-17 08:24:12.943:INFO:oejdp.ScanningAppProvider:main:部署监视器[文件:/WEBCHAT/jetty-distribution-9.2.4.v20141103/webapps/],间隔为1 2014-12-17 08:24:29.188:警告:oejuc.AbstractLifeCycle:main:FAILED org.eclipse.jetty.annotations.ServletContainerInitializersStarter@29b95cf5:java.lang.NoClassDefFoundError:org / eclipse / jetty / websocket / WebSocket $ OnTextMessage java.lang.NoClassDefFoundError:org / eclipse / jetty / websocket / WebSocket $ OnTextMessage at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:800) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) 在java.net.URLClassLoader.access $ 100(URLClassLoader.java:71) 在java.net.URLClassLoader $ 1.run(URLClassLoader.java:361) 在java.net.URLClassLoader $ 1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) 在java.net.URLClassLoader.findClass(URLClassLoader.java:354) 在org.eclipse.jetty.webapp.WebAppClassLoader.findClass(WebAppClassLoader.java:510) 在org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:441) 在org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:403)
答案 0 :(得分:1)
班级org/eclipse/jetty/websocket/WebSocket$OnTextMessage
不属于Jetty 9。
这是一个Jetty 7和Jetty 8临时类(这些类在Jetty中的WebSocket演变过程中通过最早的草案到近乎完整和最终的WebSocket规范存在。)
Jetty 9完成了最终的RFC-6455和JSR-356规范并实施了它们。
这意味着批量修复WebSocket,本机API,标准API,协议,新客户端规范,新服务器规范以及围绕WebSocket的所有最新附加规范(例如各种WebSocket扩展)。
你不能在Jetty 9中使用针对org/eclipse/jetty/websocket/WebSocket$OnTextMessage
开发的webapp,这是不可行的。