如何安装leiningen插件?

kes*_*kes 18 clojure leiningen

如何安装leiningen插件?

例如,leiningen-run?

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

Mic*_*zyk 10

如果一个插件的提供Clojars,像雷音运行是,只是把它添加到您的项目:dev-dependencies在project.clj,然后说,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
Run Code Online (Sandbox Code Playgroud)

完成上述操作后,您应该能够lein run在项目目录中说出运行您的应用程序.

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


小智 9

取决于插件

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

雷音运行

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

clojars.org

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

您可以:repositoriesproject.clj中设置自己的repos以进行搜索(或调整各种选项).:mirrors如果你有一个maven repo的内部镜像,你可以类似地设置.

"安装"未发布的插件

最后,虽然我不认为这直接是你问的但它仍然很有趣,如果你正在开发一个插件或者什么依赖于一个尚未正式发布的插件,你可以设置 :plugin-repositories