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

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

0
Clojure CLI

我有一个使用 -X 调用的 Clojure 命令行应用程序。其中一个便利之处是允许 "-" 作为值,这意味着从 stdin 读取。目前允许的数据格式是 JSON 和 edn。这曾经工作过,但现在对非 edn 数据会报错

Execution error at clojure.run.exec/read-args-stdin (exec.clj:152).
Invalid token: :

这里是一个用法示例
https://github.com/phronmophobic/viscous

cat data.json | clojure -X:viscous :json-file -

我找到了这个更改的提交,但这行为似乎没有在任何地方被记录下来(尽管搜索 "-" 很困难)。

1 答案

0

很抱歉,现在这种用法不会起作用,因为 clj 工具本身现在使用 "-" 来接受 stdin 作为 `-X` 处理的一部分。

您仍然可以使用cat data.json | clojure -X:viscous '{:json-file -}',其中包含尾部映射支持。

...