欢迎!请参阅关于页面,以了解此工作的更多信息。
我有一个使用 -X 调用的 Clojure 命令行应用程序。其中一个便利之处是允许 "-" 作为值,这意味着从 stdin 读取。目前允许的数据格式是 JSON 和 edn。这曾经工作过,但现在对非 edn 数据会报错
-X
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 -
我找到了这个更改的提交,但这行为似乎没有在任何地方被记录下来(尽管搜索 "-" 很困难)。
很抱歉,现在这种用法不会起作用,因为 clj 工具本身现在使用 "-" 来接受 stdin 作为 `-X` 处理的一部分。
您仍然可以使用cat data.json | clojure -X:viscous '{:json-file -}',其中包含尾部映射支持。
cat data.json | clojure -X:viscous '{:json-file -}'