在 Leiningen 版本 1.xx 中,我可以lein foo
通过在该项目中添加以下内容来定义仅在单个项目中有效的任务project.clj
:
(defproject tester "0.1.0-SNAPSHOT"
:description "FIXME: write description"
:url "http://example.com/FIXME"
:license {:name "Eclipse Public License"
:url "http://www.eclipse.org/legal/epl-v10.html"}
:dependencies [[org.clojure/clojure "1.4.0"]])
;; Create a task, "foo"
(ns leiningen.foo
(:require (leiningen [uberjar :as uberjar])))
(defn foo [project & args]
(println "Do something here first, then make the uberjar.")
(uberjar/uberjar project))
您可以在此处获得有关此的更多信息:
http://nakkaya.com/2010/02/25/writing-leiningen-plugins-101/
在 2.xx 中,我无法再执行此操作(即,我得到了'foo' is not a task.
似乎方式,对我来说必须为此任务启动一个单独的项目有点过分了。 是否仍然可以在 project.clj 中定义一个任务对于 leiningen 2.xx?