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

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

0投票
Clojure CLI

我有一个使用-X调用的 Clojure 命令行应用程序。其中一个便利之处是允许使用“-”作为值,表示从标准输入读取。目前,允许的数据格式是 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 工具本身现在将 "-" 作为处理 "-X" 部分,用于接受标准输入的参数。

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

...