首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >启动连接到lein项目模板的cljs nREPL

启动连接到lein项目模板的cljs nREPL
EN

Stack Overflow用户
提问于 2019-09-01 21:43:25
回答 2查看 451关注 0票数 0

我使用以下命令创建了一个ClojureScript项目:

lein new re-frame my-project

然后,我使用Cursive在IntelliJ中打开了它。在终端中键入lein dev后,它会提示我以下消息:

代码语言:javascript
复制
shadow-cljs - HTTP server available at http://localhost:8280
shadow-cljs - server version: 2.8.52 running at http://localhost:9630
shadow-cljs - nREPL server started on port 8777
shadow-cljs - watching build :app
[:app] Configuring build.
[:app] Compiling ...
[:app] Build completed. (203 files, 1 compiled, 0 warnings, 3.65s)

我可以使用指向REPL的链接打开服务器,但不能使用连接到浏览器的nREPL打开服务器。在他们的documentation之后,我在另一个终端输入shadow-cljs clj-repl,这将打开一个REPL,但不是连接到我的浏览器或项目的一个。如果我在REPL中键入(js/alert "hi m8"),它会响应:

代码语言:javascript
复制
Syntax error compiling at (REPL:2:1).
No such namespace: js

我的问题是,我如何使用它所说的已经启动的nREPL,最好是我如何在IntelliJ的集成REPL中访问它?

谢谢。

更新

我已经让它像下面这样工作了,但是如果有人知道如何在Cursive /IntelliJ中让它工作:

那就太好了。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-09-04 00:02:03

nREPL连接将始终以Clojure模式启动。您可以通过调用(shadow.cljs.devtools.api/repl :app)切换到使用CLJS,并通过:cljs/quit返回到Clojure模式。

但是,您应该连接到"Clojure REPL“远程主机”->“,然后使用端口8777连接到”本地主机“。这通过shadow-cljs.edn :nrepl {:port 8777}re-frame模板中配置为默认设置。

您发布的屏幕截图看起来像是连接到了lein创建的随机端口。这也是可行的,但需要对nREPL middleware进行额外的配置。

票数 3
EN

Stack Overflow用户

发布于 2019-09-01 21:50:51

我猜到了。您必须在另一个终端中使用shadow-cljs cljs-repl app

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57746492

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档