2024年Clojure状态调查中分享你的想法!

欢迎!请参阅关于页面了解如何工作的更多信息。

0 投票
ClojureScript

$ clojure -Srepro -Sdeps '{:deps {org.clojure/clojurescript {:mvn/version "1.10.439"}}}' -m cljs.main -re rhino -e js/foo
主线程中发生异常
异常:java.lang.StackOverflowError 在主线程的未捕获异常处理程序中抛出


添加一些代码以打印堆栈跟踪


$ git diff
diff --git a/src/main/clojure/cljs/cli.clj b/src/main/clojure/cljs/cli.clj
index fb83c72b..d0e865f9 100644
--- a/src/main/clojure/cljs/cli.clj
+++ b/src/main/clojure/cljs/cli.clj
@@ -648,5 +648,7 @@ present"
             ((get-dispatch commands :main opt script-opt)
               repl-env args (initialize inits commands))))
         repl-opt repl-env nil nil)))
+    (catch Throwable t
+      (.printStackTrace t))
     (finally
       (flush))))


结果


主线程中发生 java.lang.StackOverflowError
    at java.util.regex.Pattern$GroupHead.match(Pattern.java:4660)
    at java.util.regex.Pattern$Branch.match(Pattern.java:4606)
    at java.util.regex.Pattern$Branch.match(Pattern.java:4604)
    at java.util.regex.Pattern$BmpCharProperty.match(Pattern.java:3800)
    at java.util.regex.Pattern$Start.match(Pattern.java:3463)
    at java.util.regex.Matcher.search(Matcher.java:1248)
    at java.util.regex.Matcher.find(Matcher.java:664)
    at java.util.Formatter.parse(Formatter.java:2549)
    at java.util.Formatter.format(Formatter.java:2501)
    at java.util.Formatter.format(Formatter.java:2455)
    at java.lang.String.format(String.java:2940)
    at clojure.core$format.invokeStatic(core.clj:5744)
    at clojure.core$print_tagged_object.incrementally
    at clojure.core$print_object.invokeStatic(core_print.clj:113)
    at clojure.core$fn__7263.invokeStatic(core_print.clj:120)
    at clojure.core$fn__7263.invoke(core_print.clj:120)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7365.invokeStatic(core_print.clj:320)
    at clojure.core$fn__7365.invoke(core_print.clj:317)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7361.invokeStatic(core_print.clj:302)
    at clojure.core$fn__7361.invoke(core_print.clj:301)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7365.invokeStatic(core_print.clj:320)
    at clojure.core$fn__7365.invoke(core_print.clj:317)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7361.invokeStatic(core_print.clj:302)
    at clojure.core$fn__7361.invoke(core_print.clj:301)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7365.invokeStatic(core_print.clj:320)
    at clojure.core$fn__7365.invoke(core_print.clj:317)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7361.invokeStatic(core_print.clj:302)
    at clojure.core$fn__7361.invoke(core_print.clj:301)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7365.invokeStatic(core_print.clj:320)
    at clojure.core$fn__7365.invoke(core_print.clj:317)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7361.invokeStatic(core_print.clj:302)
    at clojure.core$fn__7361.invoke(core_print.clj:301)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7365.invokeStatic(core_print.clj:320)
    at clojure.core$fn__7365.invoke(core_print.clj:317)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7361.invokeStatic(core_print.clj:302)
    at clojure.core$fn__7361.invoke(core_print.clj:301)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7365.invokeStatic(core_print.clj:320)
    at clojure.core$fn__7365.invoke(core_print.clj:317)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7361.invokeStatic(core_print.clj:302)
    at clojure.core$fn__7361.invoke(core_print.clj:301)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7365.invokeStatic(core_print.clj:320)
    at clojure.core$fn__7365.invoke(core_print.clj:317)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7361.invokeStatic(core_print.clj:302)
    at clojure.core$fn__7361.invoke(core_print.clj:301)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7365.invokeStatic(core_print.clj:320)
    at clojure.core$fn__7365.invoke(core_print.clj:317)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7361.invokeStatic(core_print.clj:302)
    at clojure.core$fn__7361.invoke(core_print.clj:301)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7365.invokeStatic(core_print.clj:320)
    at clojure.core$fn__7365.invoke(core_print.clj:317)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invokeStatic(core_print.clj:238)
    at clojure.core$fn__7361.invokeStatic(core_print.clj:302)
    at clojure.core$fn__7361.invoke(core_print.clj:301)
    at clojure.lang.MultiFn.invoke(MultiFn.java:234)
    at clojure.core$pr_on.invokeStatic(core.clj:3674)
    at clojure.core$pr_on.invoke(core.clj:3668)
    at clojure.core$print_prefix_map$fn__7317.invoke(core_print.clj:233)
    at clojure.core$print_sequential.invokeStatic(core_print.clj:66)
    at clojure.core$print_prefix_map.invokeStatic(core_print.clj:229)
    at clojure.core$print_map.invok

1 答案

0 投票
...