[英]cider-connect-clj cannot connect to nrepl.server/start-server
A)我遇到問題,Cider 無法將cider-connect-clj
(或cider-connect-cljs
)連接到我在應用程序代碼中啟動的nREPL 服務器。 草書也不行。 它必須是需要包含的簡單配置或中間件。 但我一直在看這段代碼太久了。 我錯過了什么?
我有一個看起來像這樣的 Clojure 文件。
(ns some.namespace
(:require nrepl.server
cider.nrepl))
(nrepl.server/start-server
:port 1234
:handler
(fn [_]
(nrepl.server/default-handler cider.nrepl/cider-middleware)))
nrepl.server/start-server
啟動正常。 從 Emacs 我可以通過調用cider-connect-clj
(或cider-connect-cljs
)進行連接。 但隨后 REPL 無法根據“同步”請求進行初始化。
一世。 Emacs控制台
[nREPL] Direct connection to localhost:6776 established
nrepl-send-sync-request: Sync nREPL request timed out (op clone id 1 time-stamp 2021-02-04 23:13:46.789763000)
ii. nREPL 控制台
[WARNING] No nREPL middleware descriptor in metadata of null, see nrepl.middleware/set-descriptor!
B)我實際上正在運行Figwheel-Main並連接一個 nREPL,用於 Clojurescript 連接。 全部在我的 Clojure 應用程序中。
;; λ clj -A:dev -m some.namespace
:dev
{:extra-paths ["dev" "test"]
:extra-deps {org.clojure/clojure {:mvn/version "1.10.0"}
org.clojure/clojurescript {:mvn/version "1.10.520"}
com.bhauman/figwheel-main {:mvn/version "0.2.0"}
nrepl/nrepl {:mvn/version "0.8.3"}
cider/cider-nrepl {:mvn/version "0.25.8"}
cider/piggieback {:mvn/version "0.4.2"}}}
我認為 Figwheel 部分不會影響蘋果酒的連接嘗試。 但我將它包括在內只是為了上下文。
(defn -main [& args]
;; Start Figwheel Server
(figwheel.main.api/start
{:mode :serve} "dev")
;; Start nREPL
(def server (nrepl.server/start-server
:port 1234
:handler
(fn [_]
(nrepl.server/default-handler cider.nrepl/cider-middleware))))
;; Start Figwheel REPL
(fig/cljs-repl "dev"))
似乎您正在端口 1234 上啟動 nREPL,但隨后 Emacs 正在嘗試連接到端口 6776。這可能是原因嗎?
當您運行cider-connect-clj
時,您可以 select 您要連接的端口。 嘗試將默認端口更改為 1234,看看是否有幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.