我正在嘗試使用vagrant
,Clojure
和emacs
在一起。具體而言,我無法將cider
連接到我的vagrant
機器。將emacs蘋果酒連接到vagrant host clojure項目
它在本地工作,當我在我的項目中運行cider-jack-in
。 但我不知道在同一個項目中做什麼步驟(通過vagrant共享文件夾同步)在流浪機上。
這是迄今爲止我嘗試:
ssh vagrant
,然後cd my-project-dir
,然後lein repl
- 在Emacs,
cider-connect
,輸入[email protected]
,端口22
我得到以下信息:
SSH端口轉發失敗。檢查nrepl-tunnel緩衝區。
內部的緩衝液:
OpenSSH_6.2p2,OSSLShim 0.9.8r 2011年12月8日特權端口只能 轉發由根。
過程nrepl-隧道代碼異常退出255
何怎樣運行,作爲根?這真的是問題嗎?我應該使用另一個端口嗎?我是否必須在Clojure代碼中添加特定的內容才能啓用該功能?給出的指示here對我來說有點不清楚。
注意:它不同於this question因爲emacs
運行在主機上,而不是vagrant
機器上
編輯:
下面是我做的詳細步驟,感謝@施洛米的答案:
通過添加以下內容編輯.ssh/config(根據y編輯IP OU
Vagrantfile
):主機流浪漢 主機名192.168.50.50 端口22 用戶流浪漢 ForwardAgent是
在主機上,開始我的項目,
lein repl
。要注意端口的消息:nREPL server started on port 42018 on host 127.0.0.1 - nrepl://127.0.0.1:42018
在Emacs,
M-x cider-connect
,輸入流浪漢,你的密碼和以前lein
命令指出的端口。就是這樣:)
3.不能馬上工作,或者我沒有在流浪機上正確啓動nrepl?我被問到A - 我的密碼B - 一個連接端口(我試過59258)C - 我的密碼再次(「在緩衝區* nrepl-tunnel *中)[email protected]的密碼」)D - 連接關閉「nREPL,連接意外關閉......」)。 – nha
哦,我必須注意nRepl中的消息:「在主機127.0.0.1上的端口42018上啓動的nREPL服務器 - nrepl://127.0.0.1:42018」。現在它的作品感謝(+1)。 – nha
您還應該檢查'ssh-copy-id',這將允許您跳過已知主機的密碼輸入。可能對你的情況非常有用 – Shlomi