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

欢迎!请参阅 关于 页面了解有关如何使用本站的更多信息。

0
ClojureScript

你好,

自 cljs 1.10.748+ 以来,似乎出现了一个回归问题,即在没有明确指定输出目录的情况下请求节点编译时,会创建 .cljs_node_repl 目录作为输出目录,而不是 out

默认的输出编译目录未在 cljs.main -h 帮助文档中提及,但它似乎是默认为 out,这由以下链接末尾的语句支持 https://script.clojure.org/reference/repl-and-main

编译源代码

要编译 ClojureScript 源代码,通过 -c 选项将主命名空间传递给
cljs.main

java -cp src:cljs.jar cljs.main -c my-namespace.core

输出将写入通过 -d
选项指定的目录(如果没有指定则为 out),或通过 -o
选项指定的文件。

重现
1. 下载 clojurescript 1.10.742 和 clojuresript 1.10.748 的 jars,https://github.com/clojure/clojurescript/releases
2. 根据 https://script.clojure.org/guides/quick-start 创建入门欢迎世界程序
3. 执行 java -cp "src;cljs-1.10.748.jar" cljs.main -t node -c hello-world.core,观察会发现创建了一个 .cljs_node_repl 目录而不是预期的 out 目录。

如果使用早期版本运行相同命令,例如 java -cp "src;cljs-1.10.742.jar" cljs.main -t node -c hello-world.core,它们可以观察到将如预期创建一个 out 目录。

这看起来像是一个回归。

解决方案是明确指定目录,例如 java -cp "src;cljs-1.11.60.jar" cljs.main -t node -d out -c hello-world.core

谢谢

1 个答案

0
by

这很有趣,我认为可能会有一些关于选项的补丁,也许这次遗漏了。我在这里提了一个小问题 https://clojure.atlassian.net/browse/CLJS-3390

...