2013-01-18 3 views
2

Я думаю, что есть какой-то вариант в project.clj, но я не нашел его в документации Leiningen.Как сделать Leiningen загруженным источником необходимой библиотеки?

К примеру у меня есть этот project.clj

(defproject test-app "0.1.0-SNAPSHOT" 
      :dependencies [[org.clojure/clojure "1.4.0"] 
          [noir "1.3.0-beta3"]] 

Как я могу сделать Leiningen скачать источник нуар? Теперь у меня есть двоичные файлы.

ответ

7

noir состоит из файлов clj, и они сами являются источниками. Итак, извлеките банку: $HOME/.m2/repository/noir/noir/1.3.0-beta3/noir-1.3.0-beta3.jar, распакуйте ее и проверьте. Вы также можете проверить источники методов в REPL, используя метод source.
Если вам нужны источники java libs, тогда у вас могут быть проблемы. Я не уверен, что лейн поддерживает загрузку источников из коробки. Если вам необходимо скачать источники ява LIBS, то вы можете использовать Maven:

  1. Сформировать POM файл: lein pom
  2. Скачать источник через mvn dependency:sources: Get source JARs from Maven repository
  3. Источники будут загружены на локальный Maven репо под $HOME/.m2/repository
+0

Хорошо я получить его. Я не знал о локальном хранилище maven. Теперь я вижу исходные файлы в банках. Благодаря! –

0

Вы можете взять банку самостоятельно, вручную, от http://clojars.org/repo/. Затем распакуйте его и осмотрите.

И, конечно, вы можете перейти к источнику данной библиотеки, если хотите (страница Clojars должна отображать URL-адрес).

Кстати, обратите внимание, что noir устарел, и рекомендуется использовать Compojure + lib-noir.

+0

noir устарели? с каких пор? –

3

Я нашел плагин leiningen под названием ubersource очень удобный.

Просто добавьте его в project.clj:

:plugins [[lein-cljsbuild "1.0.1"] 
      [lein-ubersource "0.1.1"]] 

, а затем вызвать: lein ubersource

Смежные вопросы