I'm trying to run Clojure emacs with cider package installed. I use Emacs 24.5.1 on Mac OS X 10.10.4.
I downloaded lein
script and copied the script in ~/Dropbox/bin.
I checked with lein repl
that Clojure works fine.
cider package is installed with M-x package-install
. I edited the ~/.emacs.d/init.el
to specify the lein script: (add-to-list 'exec-path "~/Dropbox/bin")
with the hint from Can't launch `lein` REPL in Emacs.
However, when I started emacs and run M-x cider-jack-in
, I have this error message:
When I started lein repl
and executed M-x cider-connect
(http://xahlee.info/clojure/clojure_emacs_cider.html), I can have the cider-repl running in Emacs.
What might be wrong?
The quickest fix was to symbolically link lein to the path where Emacs can find it. This line of code fixed the issue.
sudo ln -s ~/Dropbox/bin/lein /usr/local/bin/lein
I summarized the steps to install the cider package for running Clojure on emacs without any errors or warnings.
cider - https://github.com/clojure-emacs/cider
It looks like that /usr/local/bin is not the path that Emacs finds the binary automatically, so I had to set it up.
sudo ln -s ~/Dropbox/bin/lein /usr/local/bin/lein
~/.emacs.d/init.el
to specify the location of lein script:
(add-to-list 'exec-path "/usr/local/bin")
Update ~/.lein/profiles.clj
{:user {:plugins [[cider/cider-nrepl "0.10.0-SNAPSHOT"]]}}
lein deps
If error The lein executable (specified by
cider-lein-command' or cider-boot-command') isn't on your exec-path
occurs:
init.el
as is explained. If error "Symbol's function definition is void: clojure-project-dir" occurs, it's because of the package version mismatch.
~/emacs.d/elpa
package-install
in Emacs
Now, all the warnings are gone.
For Mac OS X, brew install leiningen
can install the lein, but this caused an issue as in How to upgrade nrepl version of leiningen?. This is the message from the 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
I had to use the lein from the lein site to get the correct version of tools.
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
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With