大家好,
我开始学习Clojure。使用《Courageous and True Clojure》这本书。
我正在尝试使用 emacs, cider 运行第一段代码。
每次我运行
M-x cider-jack-in
来启动repl。它启动了,但我得到了一个非常长的错误堆栈跟踪。
根据我已经做的分析。错误是由于
java.lang.ClassNotFoundException: jdk.javadoc.doclet.Doclet引起的
我使用的是
jdk 11.0.14
clojure 1.11.1
cider 1.6.0
以下为堆栈跟踪
;; 启动: "c:/Users/nyemi/Documents/clojure/lein.bat" update-in :dependencies conj ^"[nrepl/nrepl \^"1.0.0\^"]^" -- update-in :plugins conj ^"[cider/cider-nrepl \^"0.29.0\^"]^" -- repl :headless :host localhost
ERROR: Unhandled REPL handler exception processing message {:op init-debugger, :nrepl.middleware.print/stream? 1, :nrepl.middleware.print/print cider.nrepl.pprint/pprint, :nrepl.middleware.print/quota 1048576, :nrepl.middleware.print/buffer-size 4096, :nrepl.middleware.print/options {:right-margin 70}, :session d8f7ce4f-e479-4c00-a8c3-2bc4f2bb3257, :id 6}
语法错误在宏扩展时发生于(cider/nrepl/inlined/deps/orchard/v0v11v0/orchard/java/parser.clj:1:1)。
at clojure.lang.Compiler.load(Compiler.java:7665)
at clojure.lang.RT.loadResourceScript(RT.java:381)
at clojure.lang.RT.loadResourceScript(RT.java:372)
at clojure.lang.RT.load(RT.java:459)
at clojure.lang.RT.load(RT.java:424)
at clojure.core$load$fn__6908.invoke(core.clj:6161)
at clojure.core$load.invokeStatic(core.clj:6160)
at clojure.core$load.doInvoke(core.clj:6144)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invokeStatic(core.clj:5933)
at clojure.core$load_one.invoke(core.clj:5928)
at clojure.core$load_lib$fn__6850.invoke(core.clj:5975)
at clojure.core$load_lib.invokeStatic(core.clj:5974)
at clojure.core$load_lib.doInvoke(core.clj:5953)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invokeStatic(core.clj:669)
at clojure.core$load_libs.invokeStatic(core.clj:6016)
at clojure.core$load_libs.doInvoke(core.clj:6000)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invokeStatic(core.clj:669)
at clojure.core$require.invokeStatic(core.clj:6038)
at clojure.core$require.doInvoke(core.clj:6038)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.lang.Compiler$InvokeExpr.eval(Compiler.java:3714)
at clojure.lang.Compiler$BodyExpr.eval(Compiler.java:6151)
at clojure.lang.Compiler$IfExpr.eval(Compiler.java:2741)
at clojure.lang.Compiler$DefExpr.eval(Compiler.java:457)
at clojure.lang.Compiler.eval(Compiler.java:7199)
at clojure.lang.Compiler.load(Compiler.java:7653)
at clojure.lang.RT.loadResourceScript(RT.java:381)
at clojure.lang.RT.loadResourceScript(RT.java:372)
at clojure.lang.RT.load(RT.java:459)
at clojure.lang.RT.load(RT.java:424)
at clojure.core$load$fn__6908.invoke(core.clj:6161)
at clojure.core$load.invokeStatic(core.clj:6160)
at clojure.core$load.doInvoke(core.clj:6144)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invokeStatic(core.clj:5933)
at clojure.core$load_one.invoke(core.clj:5928)
at clojure.core$load_lib$fn__6850.invoke(core.clj:5975)
at clojure.core$load_lib.invokeStatic(core.clj:5974)
at clojure.core$load_lib.doInvoke(core.clj:5953)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invokeStatic(core.clj:669)
at clojure.core$load_libs.invokeStatic(core.clj:6016)
at clojure.core$load_libs.doInvoke(core.clj:6000)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invokeStatic(core.clj:669)
at clojure.core$require.invokeStatic(core.clj:6038)
at clojure.core$require.doInvoke(core.clj:6038)
at clojure.lang.RestFn.invoke(RestFn.java:619)
at cider.nrepl.inlined.deps.orchard.v0v11v0.orchard.info$eval4201$loading__6789__auto____4202.invoke(info.clj:1)
at cider.nrepl.inlined.deps.orchard.v0v11v0.orchard.info$eval4201.invokeStatic(info.clj:1)
at cider.nrepl.inlined.deps.orchard.v0v11v0.orchard.info$eval4201.invoke(info.clj:1)
at clojure.lang.Compiler.eval(Compiler.java:7194)
at clojure.lang.Compiler.eval(Compiler.java:7183)
at clojure.lang.Compiler.load(Compiler.java:7653)
at clojure.lang.RT.loadResourceScript(RT.java:381)
at clojure.lang.RT.loadResourceScript(RT.java:372)
at clojure.lang.RT.load(RT.java:459)
at clojure.lang.RT.load(RT.java:424)
at clojure.core$load$fn__6908.invoke(core.clj:6161)
at clojure.core$load.invokeStatic(core.clj:6160)
at clojure.core$load.doInvoke(core.clj:6144)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invokeStatic(core.clj:5933)
at clojure.core$load_one.invoke(core.clj:5928)
at clojure.core$load_lib$fn__6850.invoke(core.clj:5975)
at clojure.core$load_lib.invokeStatic(core.clj:5974)
at clojure.core$load_lib.doInvoke(core.clj:5953)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invokeStatic(core.clj:669)
at clojure.core$load_libs.invokeStatic(core.clj:6016)
at clojure.core$load_libs.doInvoke(core.clj:6000)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invokeStatic(core.clj:669)
at clojure.core$require.invokeStatic(core.clj:6038)
at clojure.core$require.doInvoke(core.clj:6038)
at clojure.lang.RestFn.invoke(RestFn.java:703)
at cider.nrepl.inlined.deps.haystack.v0v0v3.haystack.analyzer$eval2880$loading__6789__auto____2881.invoke(analyzer.clj:1)
at cider.nrepl.inlined.deps.haystack.v0v0v3.haystack.analyzer$eval2880.invokeStatic(analyzer.clj:1)
at cider.nrepl.inlined.deps.haystack.v0v0v3.haystack.analyzer$eval2880.invoke(analyzer.clj:1)
at clojure.lang.Compiler.eval(Compiler.java:7194)
at clojure.lang.Compiler.eval(Compiler.java:7183)
at clojure.lang.Compiler.load(Compiler.java:7653)
at clojure.lang.RT.loadResourceScript(RT.java:381)
at clojure.lang.RT.loadResourceScript(RT.java:372)
at clojure.lang.RT.load(RT.java:459)
at clojure.lang.RT.load(RT.java:424)
at clojure.core$load$fn__6908.invoke(core.clj:6161)
at clojure.core$load.invokeStatic(core.clj:6160)
at clojure.core$load.doInvoke(core.clj:6144)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invokeStatic(core.clj:5933)
at clojure.core$load_one.invoke(core.clj:5928)
at clojure.core$load_lib$fn__6850.invoke(core.clj:5975)
at clojure.core$load_lib.invokeStatic(core.clj:5974)
at clojure.core$load_lib.doInvoke(core.clj:5953)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invokeStatic(core.clj:669)
at clojure.core$load_libs.invokeStatic(core.clj:6016)
at clojure.core$load_libs.doInvoke(core.clj:6000)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invokeStatic(core.clj:669)
at clojure.core$require.invokeStatic(core.clj:6038)
at clojure.core$require.doInvoke(core.clj:6038)
at clojure.lang.RestFn.invoke(RestFn.java:1289)
at cider.nrepl.middleware.debug$eval1742$loading__6789__auto____1743.invoke(debug.clj:1)
at cider.nrepl.middleware.debug$eval1742.invokeStatic(debug.clj:1)
at cider.nrepl.middleware.debug$eval1742.invoke(debug.clj:1)
at clojure.lang.Compiler.eval(Compiler.java:7194)
at clojure.lang.Compiler.eval(Compiler.java:7183)
at clojure.lang.Compiler.load(Compiler.java:7653)
at clojure.lang.RT.loadResourceScript(RT.java:381)
at clojure.lang.RT.loadResourceScript(RT.java:372)
at clojure.lang.RT.load(RT.java:459)
at clojure.lang.RT.load(RT.java:424)
at clojure.core$load$fn__6908.invoke(core.clj:6161)
at clojure.core$load.invokeStatic(core.clj:6160)
at clojure.core$load.doInvoke(core.clj:6144)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invokeStatic(core.clj:5933)
at clojure.core$load_one.invoke(core.clj:5928)
at clojure.core$load_lib$fn__6850.invoke(core.clj:5975)
at clojure.core$load_lib.invokeStatic(core.clj:5974)
at clojure.core$load_lib.doInvoke(core.clj:5953)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invokeStatic(core.clj:669)
at clojure.core$load_libs.invokeStatic(core.clj:6016)
at clojure.core$load_libs.doInvoke(core.clj:6000)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invokeStatic(core.clj:669)
at clojure.core$require.invokeStatic(core.clj:6038)
at clojure.core$require.doInvoke(core.clj:6038)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at cider.nrepl$handler_future$fn__1130$fn__1131.invoke(nrepl.clj:53)
at clojure.lang.AFn.applyToHelper(AFn.java:152)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.core$apply.invokeStatic(core.clj:667)
at clojure.core$with_bindings_STAR_.invokeStatic(core.clj:1990)
at clojure.core$with_bindings_STAR_.doInvoke(core.clj:1990)
at clojure.lang.RestFn.invoke(RestFn.java:425)
at cider.nrepl$handler_future$fn__1130.invoke(nrepl.clj:52)
at clojure.lang.Delay.deref(Delay.java:42)
at clojure.core$deref.invokeStatic(core.clj:2337)
at clojure.core$deref.invoke(core.clj:2323)
at cider.nrepl$wrap_debug$fn__1213.invoke(nrepl.clj:163)
at nrepl.middleware$wrap_conj_descriptor$fn__10438.invoke(middleware.clj:16)
at cider.nrepl$wrap_enlighten$fn__1221.invoke(nrepl.clj:190)
at nrepl.middleware$wrap_conj_descriptor$fn__10438.invoke(middleware.clj:16)
at nrepl.middleware.load_file$wrap_load_file$fn__11240.invoke(load_file.clj:81)
at nrepl.middleware$wrap_conj_descriptor$fn__10438.invoke(middleware.clj:16)
at cider.nrepl$wrap_content_type$fn__1171.invoke(nrepl.clj:107)
at nrepl.middleware$wrap_conj_descriptor$fn__10438.invoke(middleware.clj:16)
at nrepl.middleware.session$add_stdin$fn__10848.invoke(session.clj:379)
at nrepl.middleware$wrap_conj_descriptor$fn__10438.invoke(middleware.clj:16)
at cider.nrepl$wrap_inspect$fn__1247.invoke(nrepl.clj:227)
at nrepl.middleware$wrap_conj_descriptor$fn__10438.invoke(middleware.clj:16)
at nrepl.middleware.caught$wrap_caught$fn__10673.invoke(caught.clj:97)
at nrepl.middleware$wrap_conj_descriptor$fn__10438.invoke(middleware.clj:16)
at cider.nrepl$wrap_profile$fn__1279.invoke(nrepl.clj:343)
at nrepl.middleware$wrap_conj_descriptor$fn__10438.invoke(middleware.clj:16)
at nrepl.middleware.print$wrap_print$fn__10644.invoke(print.clj:234)
at nrepl.middleware$wrap_conj_descriptor$fn__10438.invoke(middleware.clj:16)
at cider.nrepl$wrap_undef$fn__1343.invoke(nrepl.clj:531)
at nrepl.middleware$wrap_conj_descriptor$fn__10438.invoke(middleware.clj:16)
at cider.nrepl$wrap_tracker$fn__1335.invoke(nrepl.clj:520)
at nrepl.middleware$wrap_conj_descriptor$fn__10438.invoke(middleware.clj:16)
at nrepl.middleware.lookup$wrap_lookup$fn__11266.invoke(lookup.clj:52)
at nrepl.middleware$wrap_conj_descriptor$fn__10438.invoke(middleware.clj:16)
at nrepl.middleware.session$session$fn__10835.invoke(session.clj:325)
at nrepl.middleware$wrap_conj_descriptor$fn__10438.invoke(middleware.clj:16)
at nrepl.server$default_handler$fn__11337.invoke(server.clj:141)
at nrepl.server$handle_STAR_.invokeStatic(server.clj:24)
at nrepl.server$handle_STAR_.invoke(server.clj:21)
at nrepl.server$handle$fn__11305.invoke(server.clj:41)
at clojure.core$binding_conveyor_fn$fn__5823.invoke(core.clj:2047)
at clojure.lang.AFn.call(AFn.java:18)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: jdk.javadoc.doclet.Doclet
at java.base/java.net.URLClassLoader.findClass(Unknown Source)
at clojure.lang.DynamicClassLoader.findClass(DynamicClassLoader.java:69)