Cómo instalar un plugin Leiningen?
Pregunta
¿Cómo se instala un plugin de Leiningen?
Por ejemplo, Leiningen-plazo?
veo esta cosa llamada "clojars.org", y la forma de "empujar" a ella, pero no veo nada de "tirar" de ella.
Solución
Si la disponible en Clojars un plugin, como plazo Lein es, simplemente agregarlo a :dev-dependencies
de su proyecto en project.clj, a continuación, decir lein deps
en el directorio del proyecto tenga Leiningen tracción en todas las dependencias . Un extracto anotada de los documentos del Lein de ejecución:
(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
Una vez hecho lo anterior, debe ser capaz de decir lein run
en el directorio del proyecto para ejecutar la aplicación.
Actualización: Si desea escribir sus propios plugins para Leiningen, echa un vistazo a este tutorial sobre nakkaya.com . Incluso si usted no está pensando en escribir plugins Lein, todavía echa un vistazo a ese blog, que las rocas absolutamente positiva.
Otros consejos
En función de un plugin
Con Leiningen 2.0 y mayor que especifican los conectores que desea como valores a :plugins
en su mapa de proyectos. Vea el ejemplo project.clj archivo . Tenga en cuenta que "muestra" es un nombre poco apropiado, que es una referencia para todas las claves posibles (incorporados) y la documentación de sus valores por defecto.
lein-run
La funcionalidad Lein a ejecutar es ahora parte de Leiningen núcleo y no necesita ser especificado como un plugin
clojars.org
Clojars es un repositorio de bibliotecas clojure bastante similares a maven central (o en alguna menor medida, RubyGems). Que no tire de ella de forma explícita. En su lugar, Leiningen está configurado para buscar a través de un conjunto estándar de pases para su :dependencies
P. ej maven central y clojars. Maven identifica de forma exclusiva sus dependencias (artefactos en la jerga experto) por un triple (group-name, artifact-name, version)
. Leiningen aprovecha el mismo mecanismo exacto con la excepción de que el nombre del grupo no tiene la limitación de ser un URI inverso el camino que debe ser con Maven central. En la práctica, usted tiende a ver muchas bibliotecas publicados en clojars donde el nombre bien coincide con el nombre del proyecto de espacio de nombres clojure y github sin el molesto com.mydomain.awesomelib
Se puede configurar sus propios repositorios que desea buscar (o modificar varias opciones) a través de :repositories
en que project.clj . Puede similarmente conjunto :mirrors
si tiene un espejo en la casa de un acuerdo de recompra experto.
"Instalación" plug-in de un inédito
Por último, aunque no creo que eso sea directamente lo que pedían pero sigue siendo interesante, Si está desarrollando un plugin o lo que depender de un plugin que no ha sido publicado oficialmente, se puede establecer :plugin-repositories