Как получить доступ к карте проекта из плагина leiningen?

Допустим, я создаю новый проект leiningen и редактирую файл project.clj, чтобы он выглядел примерно так:

(defproject foobar "0.1.0-SNAPSHOT"
  :dependencies [[org.clojure/clojure "1.5.1"]
                 ...
                 [clj-webmaster-tools "0.1.0"]]
  :plugins [[lein-ring "0.8.6"]
            [lein-webmaster-tools "0.1.0"]
  :webmaster {:sitemap "http://www.foobar.com/sitemap-index.xml" :robots "http://www.foobar.com/robots.txt"})

У меня вопрос, как мне получить доступ к ключу:webmaster на карте проекта для использования в плагине leningen, который я пишу?

1 ответ

Решение

Когда вы пишете плагин, первым параметром, передаваемым вашей функции плагина, является карта проекта. Это стандартная постоянная карта Clojure, поэтому вы можете получить к ней доступ, как и к любой другой карте, т.е.

(defn my-plugin[project] 
  (println (:webmaster project)))
Другие вопросы по тегам