java.lang.RuntimeException:java.lang.NoSuchMethodError:运行clojure web app时
我正在尝试运行我编写的一个小型Clojure web应用程序,但lein ring服务器出现了一个异常,它没有给我任何有用的信息。我在谷歌上搜索了错误并找到了讨论,其中建议运行java.lang.RuntimeException:java.lang.NoSuchMethodError:运行clojure web app时,clojure,leiningen,ring,monger,Clojure,Leiningen,Ring,Monger,我正在尝试运行我编写的一个小型Clojure web应用程序,但lein ring服务器出现了一个异常,它没有给我任何有用的信息。我在谷歌上搜索了错误并找到了讨论,其中建议运行leindeps:tree来解决问题,但这被低估了 完整堆栈跟踪: Exception in thread "main" java.lang.RuntimeException: java.lang.NoSuchMethodError: clojure.lang.RT.mapUniqueKeys([Ljava/lang/Ob
leindeps:tree
来解决问题,但这被低估了
完整堆栈跟踪:
Exception in thread "main" java.lang.RuntimeException: java.lang.NoSuchMethodError: clojure.lang.RT.mapUniqueKeys([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
at clojure.lang.Util.runtimeException(Util.java:165)
at clojure.lang.Compiler.eval(Compiler.java:6476)
at clojure.lang.Compiler.eval(Compiler.java:6455)
at clojure.lang.Compiler.load(Compiler.java:6902)
at clojure.lang.RT.loadResourceScript(RT.java:357)
at clojure.lang.RT.loadResourceScript(RT.java:348)
at clojure.lang.RT.load(RT.java:427)
at clojure.lang.RT.load(RT.java:398)
at clojure.core$load$fn__4610.invoke(core.clj:5386)
at clojure.core$load.doInvoke(core.clj:5385)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5200)
at clojure.core$load_lib.doInvoke(core.clj:5237)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$load_libs.doInvoke(core.clj:5275)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$require.doInvoke(core.clj:5352)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at monger.collection$eval698$loading__4505__auto____699.invoke(collection.clj:12)
at monger.collection$eval698.invoke(collection.clj:12)
at clojure.lang.Compiler.eval(Compiler.java:6465)
at clojure.lang.Compiler.eval(Compiler.java:6455)
at clojure.lang.Compiler.load(Compiler.java:6902)
at clojure.lang.RT.loadResourceScript(RT.java:357)
at clojure.lang.RT.loadResourceScript(RT.java:348)
at clojure.lang.RT.load(RT.java:427)
at clojure.lang.RT.load(RT.java:398)
at clojure.core$load$fn__4610.invoke(core.clj:5386)
at clojure.core$load.doInvoke(core.clj:5385)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5200)
at clojure.core$load_lib.doInvoke(core.clj:5237)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$load_libs.doInvoke(core.clj:5271)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$require.doInvoke(core.clj:5352)
at clojure.lang.RestFn.invoke(RestFn.java:457)
at donebox.views.landing$eval692$loading__4505__auto____693.invoke(landing.clj:1)
at donebox.views.landing$eval692.invoke(landing.clj:1)
at clojure.lang.Compiler.eval(Compiler.java:6465)
at clojure.lang.Compiler.eval(Compiler.java:6455)
at clojure.lang.Compiler.load(Compiler.java:6902)
at clojure.lang.RT.loadResourceScript(RT.java:357)
at clojure.lang.RT.loadResourceScript(RT.java:348)
at clojure.lang.RT.load(RT.java:427)
at clojure.lang.RT.load(RT.java:398)
at clojure.core$load$fn__4610.invoke(core.clj:5386)
at clojure.core$load.doInvoke(core.clj:5385)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5200)
at clojure.core$load_lib.doInvoke(core.clj:5237)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$load_libs.doInvoke(core.clj:5271)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:604)
at clojure.core$use.doInvoke(core.clj:5363)
at clojure.lang.RestFn.invoke(RestFn.java:457)
at donebox.core$eval686$loading__4505__auto____687.invoke(core.clj:1)
at donebox.core$eval686.invoke(core.clj:1)
at clojure.lang.Compiler.eval(Compiler.java:6465)
at clojure.lang.Compiler.eval(Compiler.java:6455)
at clojure.lang.Compiler.load(Compiler.java:6902)
at clojure.lang.RT.loadResourceScript(RT.java:357)
at clojure.lang.RT.loadResourceScript(RT.java:348)
at clojure.lang.RT.load(RT.java:427)
at clojure.lang.RT.load(RT.java:398)
at clojure.core$load$fn__4610.invoke(core.clj:5386)
at clojure.core$load.doInvoke(core.clj:5385)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5200)
at clojure.core$load_lib.doInvoke(core.clj:5237)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$load_libs.doInvoke(core.clj:5271)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$require.doInvoke(core.clj:5352)
at clojure.lang.RestFn.invoke(RestFn.java:457)
at user$eval3.invoke(NO_SOURCE_FILE:1)
at clojure.lang.Compiler.eval(Compiler.java:6465)
at clojure.lang.Compiler.eval(Compiler.java:6454)
at clojure.lang.Compiler.eval(Compiler.java:6431)
at clojure.core$eval.invoke(core.clj:2795)
at clojure.main$eval_opt.invoke(main.clj:296)
at clojure.main$initialize.invoke(main.clj:315)
at clojure.main$null_opt.invoke(main.clj:348)
at clojure.main$main.doInvoke(main.clj:426)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.lang.Var.invoke(Var.java:405)
at clojure.lang.AFn.applyToHelper(AFn.java:163)
at clojure.lang.Var.applyTo(Var.java:518)
at clojure.main.main(main.java:37)
Caused by: java.lang.NoSuchMethodError: clojure.lang.RT.mapUniqueKeys([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
at monger.conversion$loading__4910__auto__.invoke(conversion.clj:24)
at monger.conversion__init.load(Unknown Source)
at monger.conversion__init.<clinit>(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:266)
at clojure.lang.RT.loadClassForName(RT.java:2030)
at clojure.lang.RT.load(RT.java:417)
at clojure.lang.RT.load(RT.java:398)
at clojure.core$load$fn__4610.invoke(core.clj:5386)
at clojure.core$load.doInvoke(core.clj:5385)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5200)
at clojure.core$load_lib.doInvoke(core.clj:5237)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$load_libs.doInvoke(core.clj:5271)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:604)
at clojure.core$use.doInvoke(core.clj:5363)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at monger.core$eval704$loading__4505__auto____705.invoke(core.clj:10)
at monger.core$eval704.invoke(core.clj:10)
at clojure.lang.Compiler.eval(Compiler.java:6465)
... 95 more
Subprocess failed
core.clj:
(ns donebox.core
(:use [compojure.core]
[donebox.views.landing]
[ring.middleware.params]
[ring.middleware.anti-forgery])
(:require [compojure.route :as route]
[compojure.handler :as handler]
[compojure.response :as response]
[monger.core :as mg])) ;; Error here.
(defroutes main-routes
(GET "/" [] (index))
(POST "/process_index" [] (handle-index))
(GET "/thankyou" [] (thankyou))
(GET "/roadmap" [] (roadmap))
(route/resources "/")
(route/not-found "Page not found"))
(def handler
(-> (handler/site main-routes)
(wrap-params)
(wrap-anti-forgery)))
(defn mongo-config []
((mg/connect-via-uri! "mongodb://<dbuser>:<dbpwd>@ds031628.mongolab.com:31628/donebox"))
(defn disconnect []
(mg/disconnect!))
(ns donebox.core
(:使用[compojure.core]
[donebox.视图.着陆]
[ring.middleware.params]
[铃声、中间件、防伪])
(:require[compoure.route:as route]
[compojure.handler:作为处理程序]
[复合响应:作为响应]
[monger.core:as mg]);;这里有错误。
(b)主要路线
(获取“/”[(索引))
(POST“/进程索引”[](句柄索引))
(获取“/谢谢”[](谢谢))
(获取“/路线图”[](路线图))
(路线/资源“/)
(路由/未找到“未找到页面”))
(def处理器
(->)(装卸工/现场主要路线)
(包装参数)
(包装防伪)
(defn mongo config[]
((mg/通过uri连接!“mongodb://:@ds031628.mongolab.com:31628/donebox”))
(defn断开[]
(mg/断开!))
关于这个例外情况,我能做些什么?谢谢您的时间和考虑。这是一个很容易解决的问题
WARNING!!! possible confusing dependencies found:
[org.clojure/clojure "1.4.0"]
overrides
[com.novemberain/monger "1.5.0"] -> [org.clojure/clojure "1.5.1"]
and
[com.novemberain/monger "1.5.0"] -> [com.novemberain/validateur "1.4.0"] -> [org.clojure/clojure "1.5.1"]
and
[com.novemberain/monger "1.5.0"] -> [clojurewerkz/support "0.15.0"] -> [org.clojure/clojure "1.5.1"]
[clojure-twitter "1.2.5"] -> [com.twinql.clojure/clj-apache-http "2.3.1"] -> [org.apache.httpcomponents/httpcore "4.0.1"]
overrides
[clj-oauth "1.4.0"] -> [clj-http "0.5.3"] -> [org.apache.httpcomponents/httpclient "4.2.1"] -> [org.apache.httpcomponents/httpcore "4.2.1"]
and
[clj-oauth "1.4.0"] -> [clj-http "0.5.3"] -> [org.apache.httpcomponents/httpmime "4.2.1"] -> [org.apache.httpcomponents/httpcore "4.2.1"]
[clj-oauth "1.4.0"]
[clj-http "0.5.3"]
[cheshire "4.0.1"]
[com.fasterxml.jackson.core/jackson-core "2.0.4"]
[com.fasterxml.jackson.dataformat/jackson-dataformat-smile "2.0.4"]
[commons-codec "1.6"]
[org.apache.httpcomponents/httpclient "4.2.1"]
[org.apache.httpcomponents/httpmime "4.2.1"]
[slingshot "0.10.3"]
[clojure-complete "0.2.3"]
[clojure-twitter "1.2.5"]
[com.twinql.clojure/clj-apache-http "2.3.1"]
[commons-logging "1.1.1"]
[org.apache.httpcomponents/httpcore "4.0.1"]
[org.clojure/clojure-contrib "1.2.0"]
[com.novemberain/monger "1.5.0"]
[clojurewerkz/support "0.15.0"]
[com.google.guava/guava "14.0.1"]
[com.novemberain/validateur "1.4.0"]
[org.mongodb/mongo-java-driver "2.11.0"]
[ragtime/ragtime.core "0.3.2"]
[org.clojure/tools.cli "0.2.2"]
[compojure "1.1.5"]
[clout "1.0.1"]
[org.clojure/core.incubator "0.1.0"]
[org.clojure/tools.macro "0.1.0"]
[hiccup "1.0.3"]
[org.clojure/clojure "1.4.0"]
[org.clojure/data.json "0.2.2"]
[org.clojure/data.xml "0.0.7"]
[org.clojure/tools.nrepl "0.2.3"]
[ring-anti-forgery "0.2.1"]
[crypto-random "1.1.0"]
[ring/ring-servlet "1.2.0-RC1"]
[javax.servlet/servlet-api "2.5"]
[ring "1.2.0-RC1"]
[ring/ring-core "1.2.0-RC1"]
[clj-time "0.4.4"]
[joda-time "2.1"]
[commons-fileupload "1.3"]
[commons-io "2.4"]
[org.clojure/tools.reader "0.7.3"]
[ring/ring-codec "1.0.0"]
[ring/ring-devel "1.2.0-RC1"]
[clj-stacktrace "0.2.5"]
[ns-tracker "0.2.1"]
[org.clojure/java.classpath "0.2.0"]
[org.clojure/tools.namespace "0.1.3"]
[ring/ring-jetty-adapter "1.2.0-RC1"]
[org.eclipse.jetty/jetty-server "7.6.8.v20121106"]
[org.eclipse.jetty.orbit/javax.servlet "2.5.0.v201103041518"]
[org.eclipse.jetty/jetty-continuation "7.6.8.v20121106"]
[org.eclipse.jetty/jetty-http "7.6.8.v20121106"]
[org.eclipse.jetty/jetty-io "7.6.8.v20121106"]
[org.eclipse.jetty/jetty-util "7.6.8.v20121106"]
这是一个容易解决的问题
WARNING!!! possible confusing dependencies found:
[org.clojure/clojure "1.4.0"]
overrides
[com.novemberain/monger "1.5.0"] -> [org.clojure/clojure "1.5.1"]
and
[com.novemberain/monger "1.5.0"] -> [com.novemberain/validateur "1.4.0"] -> [org.clojure/clojure "1.5.1"]
and
[com.novemberain/monger "1.5.0"] -> [clojurewerkz/support "0.15.0"] -> [org.clojure/clojure "1.5.1"]
[clojure-twitter "1.2.5"] -> [com.twinql.clojure/clj-apache-http "2.3.1"] -> [org.apache.httpcomponents/httpcore "4.0.1"]
overrides
[clj-oauth "1.4.0"] -> [clj-http "0.5.3"] -> [org.apache.httpcomponents/httpclient "4.2.1"] -> [org.apache.httpcomponents/httpcore "4.2.1"]
and
[clj-oauth "1.4.0"] -> [clj-http "0.5.3"] -> [org.apache.httpcomponents/httpmime "4.2.1"] -> [org.apache.httpcomponents/httpcore "4.2.1"]
[clj-oauth "1.4.0"]
[clj-http "0.5.3"]
[cheshire "4.0.1"]
[com.fasterxml.jackson.core/jackson-core "2.0.4"]
[com.fasterxml.jackson.dataformat/jackson-dataformat-smile "2.0.4"]
[commons-codec "1.6"]
[org.apache.httpcomponents/httpclient "4.2.1"]
[org.apache.httpcomponents/httpmime "4.2.1"]
[slingshot "0.10.3"]
[clojure-complete "0.2.3"]
[clojure-twitter "1.2.5"]
[com.twinql.clojure/clj-apache-http "2.3.1"]
[commons-logging "1.1.1"]
[org.apache.httpcomponents/httpcore "4.0.1"]
[org.clojure/clojure-contrib "1.2.0"]
[com.novemberain/monger "1.5.0"]
[clojurewerkz/support "0.15.0"]
[com.google.guava/guava "14.0.1"]
[com.novemberain/validateur "1.4.0"]
[org.mongodb/mongo-java-driver "2.11.0"]
[ragtime/ragtime.core "0.3.2"]
[org.clojure/tools.cli "0.2.2"]
[compojure "1.1.5"]
[clout "1.0.1"]
[org.clojure/core.incubator "0.1.0"]
[org.clojure/tools.macro "0.1.0"]
[hiccup "1.0.3"]
[org.clojure/clojure "1.4.0"]
[org.clojure/data.json "0.2.2"]
[org.clojure/data.xml "0.0.7"]
[org.clojure/tools.nrepl "0.2.3"]
[ring-anti-forgery "0.2.1"]
[crypto-random "1.1.0"]
[ring/ring-servlet "1.2.0-RC1"]
[javax.servlet/servlet-api "2.5"]
[ring "1.2.0-RC1"]
[ring/ring-core "1.2.0-RC1"]
[clj-time "0.4.4"]
[joda-time "2.1"]
[commons-fileupload "1.3"]
[commons-io "2.4"]
[org.clojure/tools.reader "0.7.3"]
[ring/ring-codec "1.0.0"]
[ring/ring-devel "1.2.0-RC1"]
[clj-stacktrace "0.2.5"]
[ns-tracker "0.2.1"]
[org.clojure/java.classpath "0.2.0"]
[org.clojure/tools.namespace "0.1.3"]
[ring/ring-jetty-adapter "1.2.0-RC1"]
[org.eclipse.jetty/jetty-server "7.6.8.v20121106"]
[org.eclipse.jetty.orbit/javax.servlet "2.5.0.v201103041518"]
[org.eclipse.jetty/jetty-continuation "7.6.8.v20121106"]
[org.eclipse.jetty/jetty-http "7.6.8.v20121106"]
[org.eclipse.jetty/jetty-io "7.6.8.v20121106"]
[org.eclipse.jetty/jetty-util "7.6.8.v20121106"]
Noir已弃用,而不是
lein-deps:tree
。您能显示该输出吗?Noir已弃用,而不是lein-deps:tree
。您能显示该输出吗?您能详细说明修复方法吗?我清除了lein-deps:tree中列出的所有冲突,并且我仍然会在这篇帖子的标题中列出相同的错误,请注意详细说明修复方法是什么?我清除了lein deps:tree中列出的所有冲突,但我仍然得到了这篇文章标题中列出的相同错误