问题
我尝试使用{{clojure.stracktrace/print-stack-trace}}与GraalVM搭配,但这是无法工作的,因为需要反射来查找getMessage方法。
建议的解决方案
可以通过添加类型提示来解决这个问题。
关于(set! warn-on-reflection true)产生的警告概述
`
(set! warn-on-reflection true)`
:
反射警告,/tmp/stacktrace.clj:24:18 - 无法解析字段getCause。反射警告,/tmp/stacktrace.clj:32:15 - 无法解析字段getClassName。反射警告,/tmp/stacktrace.clj:33:9 - 无法解析字段getMethodName。反射警告,/tmp/stacktrace.clj:38:26 - 无法解析字段getFileName。反射警告,/tmp/stacktrace.clj:38:47 - 无法解析字段getLineNumber。反射警告,/tmp/stacktrace.clj:45:42 - 无法解析字段getMessage。反射警告,/tmp/stacktrace.clj:24:18 -无法解析字段getCause。
补丁 CLJ-2502-2.patch删除了不希望的空白更改并将其移动到{{root-cause}}的类型提示位置。
审核人: Alex Miller