【发布时间】:2020-11-26 18:06:15
【问题描述】:
我正在努力学习 Clojure 和 Clojurescript;目前正在阅读Living Clojure一书。
我在编译 ClojureScript 时遇到了麻烦……我只是按照书中的说明提出了示例:
(ns cheshire-cat.core)
(defn ^:export init []
(js/alert "hi"))
我尝试了书上的建议来运行编译器
lein cljsbuild auto
但我收到此错误:
Compiling ClojureScript.
Syntax error macroexpanding clojure.core/ns at (cljsbuild/crossover.clj:1:1).
import - failed: #{:refer-clojure} at: [:ns-clauses :refer-clojure :clause] spec: :clojure.core.specs.alpha/ns-refer-clojure
import - failed: #{:require} at: [:ns-clauses :require :clause] spec: :clojure.core.specs.alpha/ns-require
import - failed: #{:import} at: [:ns-clauses :import :clause] spec: :clojure.core.specs.alpha/ns-import
import - failed: #{:use} at: [:ns-clauses :use :clause] spec: :clojure.core.specs.alpha/ns-use
import - failed: #{:refer} at: [:ns-clauses :refer :clause] spec: :clojure.core.specs.alpha/ns-refer
import - failed: #{:load} at: [:ns-clauses :load :clause] spec: :clojure.core.specs.alpha/ns-load
import - failed: #{:gen-class} at: [:ns-clauses :gen-class :clause] spec: :clojure.core.specs.alpha/ns-gen-class
Full report at:
/tmp/clojure-3119149998558661227.edn
请帮忙?我已经使用 Clojure 工作了几个星期,但刚刚开始使用 ClojureScript。
【问题讨论】:
-
错误说它在
crossover.clj,但是你显示的文件应该是src/cheshire_cat/core.cljs -
这是一个可以克隆的简单 CLJS 模板项目。它使用 CLI/DEPS 和 Figwheel,我认为在使用 CLJS 时比 lein 更容易:github.com/io-tupelo/cljs-template
标签: clojure clojurescript