无法启动远程 ClojureScript bREPL(它说"Unable to resolve symbol...")



ClojureScript noob here.

我正在使用Boot遵循以下ClojureScript教程:https://github.com/magomimmo/modern-cljs/blob/master/doc/second-edition/tutorial-02.md#browser-repl-brepl

我可以按照它进行操作,并通过运行 boot repl -c andn 然后(start-repl)将命令行/启动 repl 连接到我的站点,但我想使用基于更丰富的文本编辑器的 REPL 连接到该站点。

我已经下载了原子文本编辑器的ProtoRepl。 我可以通过给它 repl 的主机 + 端口来很好地连接到 repl,但是当我尝试运行 (start-repl) 时它会抛出错误:

(start-repl)
=> CompilerException java.lang.RuntimeException: Unable to resolve symbol: start-repl in this context, compiling:(C:UsersZainAppDataLocalTempboot.user4327288409706217009.clj:1:1)

似乎我缺少一些特定于 ClojureScript/boot 的导入,但我不确定要添加什么或如何添加它。

下面是一些其他调试信息:

在工作引导 repl 连接上运行 (def start-repl),与失败的原型 repl 连接:

引导回复:

cljs.user=> (def start-repl)
#'cljs.user/start-repl

Proto-repl:

(def start-repl)
=>
#'user/start-repl

start-repl 命令由 adzerk boot-cljs-repl 库提供。如果你在 cljs.user 命名空间中,则该命令将是:

(adzerk.boot-cljs-repl/start-repl)

如果这是您第一次进入bREPL,Proto-REPL会在每次击键时抛出错误。这是原始 REPL 尝试验证/自动完成您的 clojure 表达式,但失败了。消除这些错误的最快方法是禁用自动完成:

  1. 转到 Atom 的首选项
  2. 点击"套餐"
  3. 在"已安装的软件包"下搜索"proto-repl"
  4. 单击"原型重复"框下的"设置"
  5. 向下滚动到"启用自动完成"设置,然后取消单击复选框
  6. 重新启动原子

运行这些步骤以再次启动 Brepl,您应该有一个正常工作的浏览器 repl。

从教程中可以看出,start-repl 函数位于 boot.user 命名空间中。默认情况下,Proto REPL 使用用户命名空间。Try (boot.user/start-repl)

相关内容

  • 没有找到相关文章

最新更新