我有一个clojure web项目。最近我加入了这个dep:
[org.eclipse.jetty.websocket/websocket-client "9.3.6.v20151106"]
进入我的项目,突然之间我不能再提供文件了。没有堆叠或任何可用的东西。所以我附加了一个调试器,并停止了所有异常,这就是我发现的:
org.eclipse.jetty.io.SelectorManager.newEndPoint(Ljava/nio/channels/SocketChannel;
Lorg/eclipse/jetty/io/ManagedSelector;
Ljava/nio/channels/SelectionKey;)Lorg/eclipse/jetty/io/EndPoint;
有什么想法可能导致这种情况吗?我需要另一个依赖吗?让websocket客户端jar工作?
这些是我所有的项目依赖项:
[org.eclipse.jetty.websocket/websocket-client "9.3.6.v20151106"]
[org.clojure/clojure "1.7.0"]
[org.clojure/clojurescript "1.7.189"]
[ring "1.4.0"]
[lib-noir "0.9.9"]
[ring-server "0.4.0"]
[ring/ring-anti-forgery "1.0.0"]
[compojure "1.4.0"]
[reagent "0.5.1"]
[environ "1.0.1"]
[leiningen "2.5.1"]
[http-kit "2.1.19"]
[selmer "0.9.5"]
[prone "0.8.2"]
[im.chit/cronj "1.4.4"]
[com.taoensso/timbre "3.2.1"]
[noir-exception "0.2.5"]
[buddy/buddy-auth "0.8.2"]
[buddy/buddy-hashers "0.9.1"]
[log4j "1.2.17" :exclusions [javax.mail/mail
javax.jms/jms
com.sun.jdmk/jmxtools
com.sun.jmx/jmxri]]
[org.clojure/java.jdbc "0.4.2"]
[korma "0.4.2"]
[com.h2database/h2 "1.4.190"]
[org.xerial/sqlite-jdbc "3.8.11.2"]
[com.draines/postal "1.11.4"]
[jarohen/nomad "0.7.2"]
[de.sveri/clojure-commons "0.2.0"]
[clojure-miniprofiler "0.5.0"]
[org.danielsz/system "0.2.0"]
[datascript "0.13.3"]
[cljs-ajax "0.5.2"]
[ring-transit "0.1.4"]
[com.lucasbradstreet/cljs-uuid-utils "1.0.2"]
[net.tanesha.recaptcha4j/recaptcha4j "0.0.8"]
[com.taoensso/tower "3.0.2"]
[org.clojure/core.typed "0.3.19"]
[prismatic/plumbing "0.5.2"]
[prismatic/schema "1.0.4"]
[com.rpl/specter "0.9.0"]
[clj-http "2.0.0"]
[cheshire "5.5.0"]
[alandipert/storage-atom "1.2.4"]
[org.clojure/core.memoize "0.5.8"]
[org.clojure/core.async "0.2.374"]
有人告诉我在websocket客户端中查找其他依赖项。事实上,环形码头适配器导入了导致异常的旧版本。这就是解决方案:
[ring "1.4.0"]
[lib-noir "0.9.9"]
[org.eclipse.jetty/jetty-server "9.3.6.v20151106"]
[ring/ring-jetty-adapter "1.4.0" :exclusions [org.eclipse.jetty/jetty-server]]