Вы можете поместить свои частные jar-файлы в lib/
, и они будут в пути к классам для целей lein swank
и тому подобного; похоже, что это лишает смысла использование инструмента управления зависимостями, хотя, если вы на самом деле не хотите управлять этими зависимостями, вы можете рассматривать Leiningen как «инструмент управления зависимостями с открытым исходным кодом» и, возможно, будьте осторожны с lein clean
.
По мере того, как ситуация становится более сложной - задействовано все больше частных jar-файлов, они развиваются, и вам нужно принимать во внимание некоторую информацию о версиях для них - идея Артура о создании частного репозитория Maven может быть более подходящей.
(HR означает точку отсечения для деталей, специфичных для Leiningen ... Продолжите ниже, чтобы получить информацию об общей истории инструментов управления сборкой / зависимостями в стране Clojure, включая некоторые ссылки, которые, на мой взгляд, могут оказаться очень полезными в вашей ситуации. )
Кроме того, на данный момент нет единого мнения по вопросу о том, какой инструмент для сборки лучше всего подходит для Clojure, и Leiningen, набирая популярность, также постоянно совершенствует свои функции и полировки - в частности, это означает, что это еще не завершено. Вот цитата Стюарта Хэллоуэя, автора книги Pragmatic Bookshelf «Программирование Clojure»: «Мой 2c: Leiningen - важный шаг, но еще многое предстоит сделать». Полную публикацию и очень интересное обсуждение инструментов re: build и т.п. в пространстве Clojure см. В Leiningen, Clojure и библиотеки: что мне не хватает? в группе Clojure Google. Многие участники специально упоминают о необходимости иметь локальные зависимости, не содержащиеся в каких-либо репозиториях, локальных или иных, и подробно рассказывают о решениях, которые они придумали для таких сценариев. Возможно, вы могли бы увидеть, есть ли что-нибудь, что могло бы решить вашу проблему сейчас / могло бы решить ее в будущем, когда наборы функций созреют?
В любом случае, возможно, что у Лейнингена еще нет хорошей истории для некоторых сложных сценариев. Если вы считаете, что это может быть правдой в вашем случае (и я имею в виду после того, как вы рассмотрите идею частного репо), вот несколько ссылок на альтернативы на основе maven, взятые из вышеупомянутого потока: polyglot maven, clojure-maven-plugin < / а>; это сообщение в блоге направлено на то, чтобы быть полезным для людей, пытающихся использовать maven с Clojure. Насколько я помню, Мейкель Брандмайер (также на SO под своим онлайн-дескриптором kotarak) использует Gradle (систему сборки Groovy) с подключаемым модулем Clojuresque для размещения Clojure; Я сам никогда не пробовал, так как ничего не знаю о Groovy, но он утверждает, что провел с ним очень хорошую сборку, и я считаю, что это не имеет ничего общего с maven - что само по себе является плюсом для некоторых из нас. :-)
person
Michał Marczyk
schedule
08.03.2010