загрузить новую зависимость в слизь?

Я использую emacs и swank-clojure. Как мне решить следующий сценарий -

  1. Я добавил новую зависимость в project.clj.
  2. Я запускаю lein deps в оболочке, чтобы получить новый dep.
  3. У меня есть существующий сеанс слайма, который открыт, и я хочу использовать функцию из нового деп.

Как мне заставить существующий сеанс слайма загрузить новую зависимость?

Спасибо, муртаза


person murtaza52    schedule 04.07.2012    source источник


Ответы (1)


Вам следует взглянуть на pomegranate, который предназначен для предоставления аналогичных, если не идентичных возможностей, как тот, который вы описываете .

Как указано в комментариях @gergek, leiningen2 поставляется с pomegranate, так что если вы используете lein2, вам нужно просто запустите в REPL слизи что-то вроде следующего:

(require '[cemerick.pomegranate :as p])
(p/add-dependencies :coordinates '[[org.clojure/core.logic "0.7.5"]])

Ознакомьтесь с add-dependencies docs для получения дополнительной информации о том, как его использовать.

person skuro    schedule 04.07.2012
comment
Согласно его readme Pomegranate используется Leiningen v2.x в качестве единственной библиотеки разрешения зависимостей. Если murtaza52 обновится до lein 2, он должен быть там почти всегда? - person georgek; 04.07.2012
comment
Как-то это не работает на моем lein 2.5, я получаю это после ввода первой строки в repl: FileNotFoundException Не удалось найти cemerick / pomegranate__init.class или cemerick / pomegranate.clj в пути к классам. clojure.lang.RT.load (RT.java:449) - person Anton Harald; 13.02.2016