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

欢迎!请查看关于页面以了解更多关于此功能的信息。

0
Clojure
编辑

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

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

在 Windows 上,File/separator 计算结果为 \\,但对于一个正则表达式模式,需要是 \\\\

这在 Linux 和 Mac OS 上运行良好

1 个答案

0

选中
 
最佳答案

我确信 Alex Miller 很可能了解这一情况,他是有权做出此类更改的人,但一种修复方法是调用 (re-pattern (str/re-quote-replacement File/separator)),其中 str 是 clojure.string 命名空间的标准别称。

by
是的,这是正确的修正方案。不幸的是,由于我正在积极开发它,add-lib 分支目前处于一个非常奇怪的状态。特别是 master 中有一些新的(尚未发布)代码,我已经将其合并到 add-lib 中,因此我认为 add-lib 的最新版本目前实际上不能与任何已发布的 clj 兼容。
by
实际上,这段代码很快就会被删除,add-lib 也不会再支持从 java 类路径构建 lib 映射。
by
@alexmiller,如果你不介意的话,根据最近的 Clojure 工具更改,add-lib 的状态如何?这个功能(非常明确地没有承诺任何事情,因为它是 alpha 库的一个实验性分支)是你打算放弃的吗?还是在未来路线图中还有计划能够从 REPL 加载库的方案?
...