我刚刚安装了一个新的emacs安装程序,安装了ELPA,并使用ELPA安装了swank。虽然Clojure 1.2已经发布,但当我点击“me黏液”时,它仍然为我下载了Clojure 1.1,而不是1.2
既然它是可用的,我如何让它使用1.2?我必须手动做吗?我是否必须等待黏液/污垢被更新到使用1.2?
Update:感谢关于使用leiningen的建议,但我想要的是emacs仅仅启动REPL本身。发生此问题是因为ELPA中的swank-clojure包没有被更新吗?
发布于 2010-08-21 00:19:58
使用Leiningen 1.3,很容易创建一个独立的swank会话:
$ lein install swank-clojure 1.3.0-SNAPSHOT
$ ~/.lein/bin/swank-clojure您可以将~/..lein/bin添加到您的$PATH中,以使这更容易。
然后在Emacs里面:
M-x slime-connect如果您在项目目录中,可以使用马克斯莱茵从Emacs内部启动swank。但是,通过swank-clojure.el自动下载和安装Clojure和其他依赖项是容易出错的,是不可取的。
发布于 2010-08-20 23:16:28
我使用leiningen将emacs粘液连接到clojure实例。在一个项目中,总是有两个依赖项,leiningen很好地将这些依赖项放在类路径上。
它使用一个小的clojure文件来描述依赖关系,例如:
(defproject myprojecy "0.1.0-SNAPSHOT"
:description "A project."
:dependencies [[org.clojure/clojure "1.2.0-beta1"]
[org.clojure/clojure-contrib "1.2.0-beta1"]]
:dev-dependencies [[swank-clojure "1.2.1"]])您可以看到,更改版本只是在编辑器中敲了几下键。Leiningen从'net‘下载依赖项,这使得项目能够快速地进行版本控制。
运行lein swank启动程序并在swank中重新启动:
ptimac:cljhack pti$ lein swank
user=> Connection opened on local port 4005
#<ServerSocket ServerSocket[addr=localhost/127.0.0.1,port=0,localport=4005]>现在,您可以使用M粘胶连接在emacs中,并接受默认设置。
发布于 2011-01-23 09:48:26
您只需要在点击M粘液之前设置swank-clojure-classpath变量即可。
假设您在c:\jars下面有clojure.jar、clojure-contrib.jar和swank-clojure.jar
在scratch缓冲区中粘贴以下内容
(setq swank-clojure-classpath '("c:/jars/clojure.jar" "c:/jars/cloure-contrib.jar"
"c:/jars/swank-clojure.jar"))击中C-e和M-x黏液,这样就行了。
详情请结帐
https://github.com/jochu/swank-clojure/blob/master/swank-clojure.el#L32-34
jars.3F
https://stackoverflow.com/questions/3535407
复制相似问题