2024 Clojure 状态调查!中分享您的想法。

欢迎!请参阅关于页面以了解更多关于如何使用本站的信息。

0
ClojureScript
下面的


clojure -m cljs.main -co '{:npm-deps {"slate" "0.33.6"} :install-deps true}' -e "(require 'slate)"


生成以下异常


异常发生在主线程 "main" 中:java.lang.IllegalArgumentException: /Users/mfikes/node_modules/immutable/dist/immutable.js 不是相对路径
    在 clojure.java.io$as_relative_path.invokeStatic(io.clj:414) 处
    在 clojure.java.io$file.invokeStatic(io.clj:426) 处
    在 clojure.java.io$file.invoke(io.clj:418) 处
    在 cljs.closure$write_javascript.invokeStatic(closure.clj:1857) 处
    在 cljs.closure$write_javascript.invoke(closure.clj:1850) 处
    在 cljs.closure$process_js_modules$fn__5815.invoke(closure.clj:2560) 处
    在 clojure.lang.ArrayChunk.reduce(ArrayChunk.java:63) 处
    在 clojure.core.protocols$fn__7847.invokeStatic(protocols.clj:136) 处
    在 clojure.core.protocols$fn__7847.invoke(protocols.clj:124) 处
    在 clojure.core.protocols$fn__7807$G__7802__7816.invoke(protocols.clj:19) 处
    在 clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj:31) 处
    在 clojure.core.protocols$fn__7835.invokeStatic(protocols.clj:75) 处
    在 clojure.core.protocols$fn__7835.invoke(protocols.clj:75) 处
    在 clojure.core.protocols$fn__7781$G__7776__7794.invoke(protocols.clj:13) 处
    在 clojure.core$reduce.invokeStatic(core.clj:6748) 处
    在 clojure.core$reduce.invoke(core.clj:6730) 处
    在 cljs.closure$process_js_modules.invokeStatic(closure.clj:2559) 处
    在 cljs.closure$process_js_modules.invoke(closure.clj:2518) 处
    在 cljs.closure$handle_js_modules.invokeStatic(closure.clj:2672) 处
    在 cljs.closure$handle_js_modules.invoke(closure.clj:2633) 处
    在 cljs.repl$evaluate_form.invokeStatic(repl.cljc:508) 处
    在 cljs.repl$evaluate_form.invoke(repl.cljc:484) 处
    在 cljs.repl$eval_cljs.invokeStatic(repl.cljc:672) 处
    在 cljs.repl$eval_cljs.invoke(repl.cljc:665) 处
    在 cljs.repl$run_inits$fn__6480.invoke(repl.cljc:823) 处
    在 cljs.repl$run_inits.invokeStatic(repl.cljc:821) 处
    在 cljs.repl$run_inits.invoke(repl.cljc:814) 处
    在 cljs.cli$default_main$fn__6799.invoke(cli.clj:340) 处
    在 cljs.compiler$with_core_cljs.invokeStatic(compiler.cljc:1285) 处
    在 cljs.compiler$with_core_cljs.invoke(compiler.cljc:1274) 处
    在 cljs.compiler.api$with_core_cljs.invokeStatic(api.clj:50) 处
    在 cljs.compiler.api$with_core_cljs.invoke(api.clj:34) 处
    在 cljs.compiler.api$with_core_cljs.invokeStatic(api.clj:42) 处
    在 cljs.compiler.api$with_core_cljs.invoke(api.clj:34) 处
    在 cljs.cli$default_main.invokeStatic(cli.clj:326) 处
    在 cljs.cli$default_main.invoke(cli.clj:299) 处
    在 cljs.cli$null_opt.invokeStatic(cli.clj:394) 处
    在 cljs.cli$null_opt.invoke(cli.clj:391) 处
    在 cljs.cli$main.invokeStatic(cli.clj:612) 处
    在 cljs.cli$main.doInvoke(cli.clj:601) 处
    在 clojure.lang.RestFn.applyTo(RestFn.java:139) 处
    在 clojure.core$apply.invokeStatic(core.clj:659) 处
    在 clojure.core$apply.invoke(core.clj:652) 处
    在 cljs.main$_main.invokeStatic(main.clj:61) 处
    在 cljs.main$_main.doInvoke(main.clj:52) 处
    在 clojure.lang.RestFn.applyTo(RestFn.java:137) 处
    在 clojure.lang.Var.applyTo(Var.java:702) 处
    在 clojure.core$apply.invokeStatic(core.clj:657) 处
    在 clojure.main$main_opt.invokeStatic(main.clj:317) 处
    在 clojure.main$main_opt.invoke(main.clj:313) 处
    在 clojure.main$main.invokeStatic(main.clj:424) 处
    在 clojure.main$main.doInvoke(main.clj:387) 处
    在 clojure.lang.RestFn.applyTo(RestFn.java:137) 处
    在 clojure.lang.Var.applyTo(Var.java:702) 处
    在 clojure.main.main(main.java:37) 处

2 答案

0

评论由 mfikes 制作

显然,这次失败与我家中目录下的 {{node_modules}} 目录有关。删除它后,上述问题就不存在了。

也许这是处理向外扩展的结果(我在家目录的子目录中)。如果是这样, ClojureScript 编译器可能可以自己处理这个特殊情况?(或者这仅仅是用户的错误?)

0
参考:https://clojure.atlassian.net/browse/CLJS-2756(由 mfikes 报告)
...