Рабочий процесс для взлома на библиотеках Clojure с помощью Swank-Clojure

StackOverflow https://stackoverflow.com/questions/8846706

Вопрос

Есть ли типичный рабочий процесс для взлома библиотек Clojure?

Скажем, у меня есть мое приложение «Foo», которое опирается на стороннюю библиотеку «бар», которая была получена из репозитория и включен в Project Foo Via lein deps.

Затем, скажем, я хочу взломать библиотеку «бар», поэтому я клонирую его от GitHub.

Теперь я хотел бы взломать свой локальный клон «Бар», в то же время работая над приложением «Foo», что зависит от этого. Я бы хотел, чтобы все исходные файлы для «полоса» открывались в EMACS вместе со всеми исходными файлами в «Foo», используя один экземпляр Swank.

Есть простой способ сделать это?

Я хочу изменить свой Окружающая среда а не проект. Поэтому я не хочу редактировать Project.clj для "foo", чтобы сделать это.

Требуется ли это настройка пути класса перед началом запуска lein swank, или есть лучший способ?

Это было полезно?

Решение

Создать checkouts Справочник в вашем проекте Foo и создайте символическую ссылку на ваш клон проекта Bar в этом каталоге.

To quote the Leiningen Faq:

Q.: Я хочу взломать два проекта параллельно, но раздражает переключаться между ними.
А: Если вы создаете каталог, называемый Checkouts в вашем проекте Root, и сочувствуйте некоторым другим корням проекта, Leiningen позволит вам взломать их параллельно. Это означает, что изменения в зависимости будут видны в основном проекте без необходимости проходить весь цикл установки/переключателей/DEPS/RESTART-Repl, и копия в окрашивании будет иметь приоритет над зависимостью, объявленной в Project.Clj. Обратите внимание, что это не замена для перечисления проекта в: зависимости; Это просто дополняет это для удобства.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top