Внешние зависимости и работа с классами Java.
Прописываем нужные пакеты вместе с версиями в project.clj. Те пакеты, которые нужны в процессе выполнения программы, добавляются в корневой набор :dependencies. То, что нужно только во время разработки или, скажем, тестирования, прописывается в нужный профиль.
Здесь вы можете найти пример "локальной копии внешней библиотеки": checkouts/example.
Внимание: перед началом работы с кодом этого проекта вам нужно зайти в checkouts/example и выполнить там lein install. Эта команда установит пакет в локальный реестр пакетов Maven (обычно он находится в ~/.m2/). После выполнения этой команды пакет будет доступен для "установки" в текущий проект — lein сможет его подключить.
Обрабатываются ошибки с помощью try/catch/finally. Кидаются с помощью throw.
(try
;; тут возникает ошибка
(catch Exception e
;; делаем что-то с экземпляром ошибки
)
(finally
;; делаем обязательную завершающую работу
)
)Подробнее читаем тут: Java interop.
Любой класс перед использованием нужно импортировать. Это делается с помощью функции import или с помощью соответствующей опции макроса ns.