Итак, у меня есть эта проблема с рабочим процессом:
Я с удовольствием печатаю на моем проекте clojure repl и понимаю, что мне нужна другая библиотека, которая не находится в моем project.clj
, скажем, в этом случае мне нужна библиотека tools.cli
.
Я открываю project.clj
в своем редакторе и добавляю запись в :dependencies
[org.clojure/tools.cli "0.2.1"]
Затем, в каталоге проекта, я набираю lein deps
в оболочке, чтобы вытащить необходимые библиотеки
После вытягивания зависимостей проекта технически все файлы классов уже готовы к загрузке, но если я вернусь к своему реплику и напечатаю:
> (use 'tools.cli)
Я получаю это:
=>> FileNotFoundException Could not locate tools/cli__init.class
or tools/cli.clj on classpath: clojure.lang.RT.load (RT.java:432)
Поэтому мне пришлось бы перезапустить мой реплик, потратив целую кучу времени на переконфигурирование состояния реплики до того места, где я был до того, как мне понадобилась библиотека.
Есть ли способ динамически загружать библиотеку? например, после того, как я запустил lein deps
, я просто вернусь к реплике и напечатаю:
> (load-library "tools.cli")
> (use 'tools.cli)
Заранее спасибо