在Leiningen版本1.XX我可以只在一個單一的項目通過將按照定義lein foo
任務有效的該項目的project.clj
:項目級Leiningen插件
(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.
看來途徑,方式矯枉過正,我將不得不開始一個單獨的項目爲此任務。 是否仍然可以在leiningen 2.x.x的project.clj中定義一個任務?
對不起,沒有骰子。我也發現了這個提示,在這種情況下它似乎沒有做任何事情。我已經用完整的'project.clj'來更新我的問題來完成這個例子。感謝您的努力。 – charleslparker
我沒有意識到你在你的project.clj文件中有你的「foo」定義。用正確的答案更新我的答案(希望) – DanLebrero
這樣做!這多一點痛苦,但還不算太壞。謝謝! – charleslparker