无法通过优化构建 ClojureScript 快速入门

Can't build ClojureScript quickstart with optimizations

我在 ClojureScript quickstart 的生产版本部分遇到了问题。具体来说,当我 运行: java -cp "cljs.jar;src" clojure.main release.clj 我得到一个 java 异常:

Exception in thread "main" java.nio.file.InvalidPathException: Illegal char <:> at index 2: /C:/dev2/Experiments/cljscript/hello_world/out/cljs/core.js, compiling:(C:\dev2\Experiments\cljscript\hello_world\release.clj:3:1)

我在 Windows 上这样做,我怀疑 google 闭包编译器不喜欢 windows 风格的路径,特别是冒号。我的 release.clj 是:

(require 'cljs.build.api)

(cljs.build.api/build "src"
{
    :output-to "out/main.js"
    :optimizations :advanced
})

(System/exit 0)

我正在调用它:java -cp "cljs.jar;src" clojure.main release.clj。如果我注释掉 :optimizations 行,那么构建成功。

我的确切设置在这里:https://github.com/PaulRobson/cljs-quickstart

这是一个已知问题https://dev.clojure.org/jira/browse/CLJS-2401

解决方法是使用带连字符的输出目录,如

(require 'cljs.build.api)

(cljs.build.api/build "src"
{
    :output-to "out-foo/main.js"
    :optimizations :advanced
})

(System/exit 0)