如何安装leiningen插件?

时间:2010-03-06 18:50:07

标签: clojure leiningen

如何安装leiningen插件?

例如,leiningen-run?

我看到这个名为“clojars.org”的东西,以及如何“推”到它,但我没有看到任何关于“拉”的东西。

2 个答案:

答案 0 :(得分:10)

如果在Clojars上有一个插件,比如lein run,只需将它添加到project.clj中项目的:dev-dependencies,然后在项目目录中说lein deps以让Leiningen进入所有依赖。来自lein run的文档的摘录:

(defproject island-wari "0.1"
  :description "Web application for playing the Island Wari game."
  :main wari
  :dependencies     [[org.clojure/clojure "1.1.0-master-SNAPSHOT"]
                     [org.clojure/clojure-contrib "1.1.0-master-SNAPSHOT"]
                     [org.clojars.liebke/compojure "0.3.1-master"]]
  :dev-dependencies [[org.clojure/swank-clojure "1.0"]
                     [leiningen-run "0.2"]]) ; <--- this bit makes it possible
                                             ;      to use lein run

完成上述操作后,您应该可以在项目目录中说lein run来运行您的应用。

更新:如果您想为Leiningen编写自己的插件,请查看this tutorial on nakkaya.com。即使你不打算编写lein插件,仍然看看那个博客,它绝对是积极的。

答案 1 :(得分:9)

取决于插件

使用Leiningen 2.0及更高版本,您可以在项目图中指定要作为:plugins值的插件。请参阅示例project.clj文件。请注意,“sample”有点用词不当,它是所有可能(内置)键及其默认值文档的参考。

LEIN运行

lein-run功能现在是leiningen核心的一部分,不需要指定为插件

clojars.org

Clojars是一个clojure库的存储库,非常类似于maven central(或者在某种程度上,类似于rubygems)。你没有明确地从中拉出来。相反,Leiningen被配置为搜索:dependencies的标准回购集。 maven central和clojars。 Maven通过三(group-name, artifact-name, version)唯一地标识其依赖关系(maven用语中的工件)。 Leiningen利用完全相同的机制,除了组名不具有与maven central一样的反向URI的限制。在实践中,你会看到许多库在clojars中发布,其中名称很好地匹配clojure名称空间和github项目名称而没有烦人的com.mydomain.awesomelib

您可以通过project.clj中的:repositories设置自己的回购信息(或调整各种选项)。如果你有一个maven repo的内部镜像,你可以类似地设置:mirrors

“安装”未发布的插件

最后,虽然我认为这不是你所要求的,但它仍然很有趣,如果你正在开发一个插件或者什么依赖于一个尚未正式发布的插件,你可以设置{{1 }}