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

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

0
Clojure
编辑

clojure.tools.deps.alpha.libmap.clj 中的 'read-cp' 函数在尝试使用 File/separator 正则表达式分割路径字符串时失败。这发生在第 41 行。

(str/split path-in-repo (re-pattern File/separator))

在 Windows 上,File/separator 转换为 \\,但对于正则表达式,它需要是 \\\\

这可以在 Linux 和 Mac OS 上正常工作

1 个答案

0

选中
 
最佳答案

我确信 Alex Miller 已经非常了解这一点,他是可能授权进行此类更改的人之一,但是在 clojure.string 的典型别名 str 中调用 (re-pattern (str/re-quote-replacement File/separator)) 是一个解决方案。

by
是的,这是正确的修正。不幸的是,add-lib分支目前处于一个非常奇怪的位置,因为我正在积极地进行相关工作。特别是,在master中有些新代码(尚未发布),我已经将其合并到add-lib中,所以我认为add-lib的最新代码目前实际上无法与任何发布的clj兼容。
by
实际上,这段代码将完全消失,而且add-lib今后将不再支持从Java类路径构建lib映射。
by
@alexmiller,如果您不介意的话,根据最近的Clojure工具变更,add-lib的现状如何?这个功能(作为一个alpha库的实验分支,非常明显不会承诺任何事情)是要放弃吗?还是道路图上仍有计划能够从REPL加载库?
...