4

我正在尝试运行安装了 cider 包的 Clojure emacs。我在 Mac OS X 10.10.4 上使用 Emacs 24.5.1。

我下载lein了脚本并将脚本复制到 ~/Dropbox/bin 中。我检查了lein replClojure 工作正常。

苹果酒包是随M-x package-install. 我编辑了~/.emacs.d/init.el指定 lein 脚本:(add-to-list 'exec-path "~/Dropbox/bin")带有Can't launch `lein` REPL in Emacs的提示。

但是,当我启动 emacs 并运行时M-x cider-jack-in,我收到以下错误消息:

在此处输入图像描述

当我启动lein repl并执行M-x cider-connect( http://xahlee.info/clojure/clojure_emacs_cider.html ) 时,我可以让 cider-repl 在 Emacs 中运行。

在此处输入图像描述

可能有什么问题?

4

2 回答 2

16

最快的解决方法是将 lein 符号链接到 Emacs 可以找到它的路径。这行代码解决了这个问题。

sudo ln -s ~/Dropbox/bin/lein /usr/local/bin/lein

我总结了在没有任何错误或警告的情况下安装 cider 包以在 emacs 上运行 Clojure 的步骤。

苹果酒 - https://github.com/clojure-emacs/cider

安装

  • 下载 lein https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein
    • 我在使其可执行后复制了文件 ~/Dropbox/bin。
  • 看起来 /usr/local/bin 不是 Emacs 自动找到二进制文件的路径,所以我不得不设置它。

    • sudo ln -s ~/Dropbox/bin/lein /usr/local/bin/lein
    • 更新~/.emacs.d/init.el以指定 lein 脚本的位置:
      • (add-to-list 'exec-path "/usr/local/bin")
  • 更新~/.lein/profiles.clj

    • 安装 cider-nrepl
    • {:user {:plugins [[cider/cider-nrepl "0.10.0-SNAPSHOT"]]}}
    • lein deps

错误和解决方案

  • 如果发生错误The lein executable (specified bycider-lein-command' 或cider-boot-command') isn't on your exec-path

    • 制作符号链接,并init.el按照说明进行更新。
  • 如果出现错误“Symbol's function definition is void: clojure-project-dir”,这是因为包版本不匹配。

现在,所有的警告都消失了。

在此处输入图像描述

参考

添加

对于 Mac OS X,brew install leiningen可以安装 lein,但这会导致问题,如如何升级 leiningen 的 nrepl 版本?. 这是来自 lein brew 的信息。

nREPL server started on port 61216 on host 127.0.0.1 - nrepl://127.0.0.1:61216
REPL-y 0.3.5, nREPL 0.2.6
Clojure 1.6.0
Java HotSpot(TM) 64-Bit Server VM 1.8.0_45-b14

我不得不使用 lein 网站上的 lein 来获得正确版本的工具。

Retrieving org/clojure/clojure/1.2.0/clojure-1.2.0.pom from central
nREPL server started on port 61279 on host 127.0.0.1 - nrepl://127.0.0.1:61279
REPL-y 0.3.7, nREPL 0.2.7
Clojure 1.7.0
于 2015-08-22T00:24:44.783 回答
1

另一个简单的解决方案是只使用自制软件。虽然自制软件仅用于安装 lein,但如果您已经使用它,那么您需要做的就是运行

brew update
brew install leiningen

你完成了。我使用 homebrew 来安装 emacs 和其他一些有用的应用程序,所以我已经在我的系统上安装了它。

于 2015-08-22T03:52:03.023 回答