emacs – 连接到swank-server时出现异常

当尝试M-x粘连连接到在clojure应用程序中运行的swank服务器时,我得到一个用户>提示,但一旦我开始键入连接中断,因为应用程序抛出:

exception in read loop
java.lang.RuntimeException: Invalid token: swank::

再往下看,我看到:

unreadable message: (:emacs-rex (swank:autodoc (quote ("ns" "" swank::%cursor-marker%)) :print-right-margin 80) "user" :repl-thread 4)

当我开始粘液时,我得到:

Versions differ: 2010-07-21 (slime) vs. 20100404 (swank). Continue? (y or n)   

但这种不匹配should be OK.

我在项目的依赖项中有swank-clojure 1.3.3,我也安装了leiningen插件.我从应用程序内部启动了swank-server(swank.swank / start-server:host“localhost”:port 4005).

我的环境:

> GNU Emacs 23.2.1关于debian squeeze(稳定)amd64
>通过debian存储库安装的粘液
> sun-java6-jre
>莱宁根1.6.2
> swank-clojure 1.3.3
> clojure 1.3.0

我还应该提到M-x clojure-jack-in工作正常,但我需要能够连接
远程.

版本不匹配可能是罪魁祸首吗?有人使用类似的工作设置?

最佳答案 您应升级到swank-clojure 1.4.0并使用与其捆绑的版本的粘液.在clojure模式中有一个’clojure-jack-in’命令,当你从一个clojure项目“插入”到swank时,它将处理粘液的加载.你看到的所有错误都将消失. slime-disconnect [-all]是退出的正确方法.

点赞