Baishampayan Ghose <b.gh...@ocricket.com> writes:

> Can you kindly share your working dotfiles and enlighten me?

I use M-x clojure-install plus (clojure-slime-config), since I wrote
it. This this is _all_ you need for projects that don't have
dependencies on third-party jars.

For some other projects, I've been using maven to handle the
dependencies. For those, I use this function to start up SLIME:

(defun slime-project (path)
  "Setup classpaths for a clojure project and starts a new SLIME session.

Kills existing SLIME session, if any."
  (interactive (list
                (ido-read-directory-name
                 "Project root: "
                 (locate-dominating-file default-directory "pom.xml"))))
  (when (get-buffer "*inferior-lisp*")
    (kill-buffer "*inferior-lisp*"))
  (setq swank-clojure-binary nil
        swank-clojure-jar-path (expand-file-name "target/dependency/" path)
        swank-clojure-extra-classpaths
        (mapcar (lambda (d) (expand-file-name d path))
                '("src/" "target/classes/" "test/"))
        swank-clojure-extra-vm-args
        (list (format "-Dclojure.compile.path=%s"
                      (expand-file-name "target/classes/" path)))
        slime-lisp-implementations
        (cons `(clojure ,(swank-clojure-cmd) :init swank-clojure-init)
              (remove-if #'(lambda (x) (eq (car x) 'clojure))
                         slime-lisp-implementations)))
  (save-window-excursion
    (slime)))

The main difference is that the project is self-contained; it uses the
copy of clojure that Maven has placed in target/dependency, and all the
dependent jars are unpacked there too. It does require Emacs23 for the
call to locate-dominating-file.

> (setq swank-clojure-binary "clojure")
>
> (add-to-list 'slime-lisp-implementations
>              '(clojure ("/home/ghoseb/bin/clojure") :init
> swank-clojure-init))

It looks like you're using a wrapper script rather than letting
swank-clojure construct a "java" command-line invocation. I'm not sure
why you're doing this; working with the defaults might fix it.

-Phil

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to 
clojure+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to