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

欢迎!有关如何使用本网站的更多信息,请参阅关于 页面。

+4
Clojure

我常常发现自己需要在 (ns) 的 (require) 或 (use) 子句中添加 :verbose,以便调试问题(尤其是宏或错误的命名空间声明)。如果能定义一个 JVM 系统属性(如 -Dclojure.load-verbosely=true),将 loading-verbosely 默认设置为 true 对一个 REPL 会话或构建过程将是一件很棒的事情。

有时,我只是想查看命名空间加载情况,作为启动应用程序或运行一系列测试时的进度指标。

我非常希望看到这一点得到实现或修补。
如果我有更多的要求,我会希望看到它也能响应 `set!` 操作。我不确定是什么让 `*warn-on-reflection*` 在这方面如此特别,但感觉这似乎很相似。

3 答案

0

评论由:tsdh做出的。

此补丁实现了建议的功能。

新的系统属性的名称为{{clojure.core.loading-verbosely}},理由是与现有的{{clojure.compile.warn-on-reflection}}类似。

0
参考: https://clojure.atlassian.net/browse/CLJ-1112(由hlewisship报告)
0

这实际上非常有帮助,尤其是在问题仅在生产构建(如uberjar)中显现的情况下。

...