大家好,我已经在GitHub仓库的README中的shadow-cljs快速入门指南中处理了shadow-cljs,并在浏览器控制台中得到了期望的消息。接下来,我想将deps.edn
引入到项目中。在添加了deps.edn
之后,我遇到了一些(自我施加的)困难。
系统详细信息
操作系统:WSL2
Java版本:OpenJDK 11.0.15
Clojure CLI版本:1.11.1.1113
在项目中只有shadow-cljs.edn
时,该文件的内容为
;; shadow-cljs.edn
{:source-paths ["src/dev"
"src/main"
"src/test"]
:dependencies []
:dev-http {8080 "public"}
:builds {:frontend {:target :browser
:modules {:main {:init-fn acme.frontend.app/init}}}}}
在此阶段,使用“shadow-cljs”项目类型在Calva中启动并连接到“:frontend”构建,工作得很好。
如第一段所述,我在将deps.edn
引入项目中时遇到了困难。
将以下内容的deps.edn
添加到主项目目录中
;; deps.edn
{:paths ["src/main"
"src/dev"
"src/test"]
:aliases
{:cljs {:extra-deps {thheller/shadow-cljs {:mvn/version "2.19.0"}}}}}
将shadow-cljs.edn
修改为
;; shadow-cljs.edn
{:deps {:aliases [:cljs]}
:dev-http {8080 "public"}
:builds {:frontend {:target :browser
:modules {:main {:init-fn acme.frontend.app/init}}}}}
在此阶段,使用“deps.edn + shadow-cljs”项目类型在Calva中连接会引发错误,错误信息包含“Failed starting cljs repl for build: :frontend. Is the build running and connected?”
Calva连接日志也提供了信息,包括:“shadow-cljs尚未启动!”和“如果您有一个shadow-cljs服务器或监视器正在运行,则您尚未连接到此进程。”
看起来构建尚未启动。如果我们运行npx shadow-cljs watch frontend
然后尝试连接到REPL,之前的错误消息仍然会出现。
结果是,我应该继续使用“shadow-cljs”项目类型(在这种情况下,添加deps.edn
没有任何麻烦)。
这让我想知道
感谢Peter和其他Calva的贡献者!