【发布时间】:2015-10-10 20:54:02
【问题描述】:
我正在尝试同时使用vagrant、Clojure 和emacs。具体来说,我无法将cider 连接到我的vagrant 机器。
当我在我的项目中运行 cider-jack-in 时,它在本地工作。
但我不知道在 vagrant 机器上的同一个项目(通过 vagrant 共享文件夹同步)中执行此操作的步骤是什么。
到目前为止,这是我的尝试:
-
ssh vagrant,然后是cd my-project-dir,然后是lein repl - 在emacs中,
cider-connect,输入vagrant@192.168.50.50,端口22
我收到以下消息:
SSH 端口转发失败。检查 nrepl-tunnel 缓冲区。
在那个缓冲区内:
OpenSSH_6.2p2, OSSLShim 0.9.8r 2011 年 12 月 8 日 特权端口只能是 由root转发。
进程 nrepl-tunnel 异常退出,代码为 255
我应该以 root 身份运行它吗?真的是问题吗?我应该使用另一个端口吗?我是否必须在我的 Clojure 代码中添加特定内容才能启用它? here 给出的方向对我来说有点不清楚。
注意:它与this question 不同,因为emacs 在主机上运行,而不是在vagrant 机器上运行
编辑:
感谢@Shlomi 的回答,这是我所做的详细步骤:
-
通过添加以下内容来编辑 .ssh/config(根据您的
Vagrantfile编辑 IP):寄宿家庭 主机名 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,输入 vagrant,你的密码和前面lein命令记录的端口。就是这样:)
【问题讨论】:
标签: emacs ssh clojure vagrant cider