tutorial lein instalar code bridal clojure leiningen

lein - instalar clojure



¿Alguna forma de agregar dependencia al proyecto de lein sin reiniciar REPL? (2)

Lo que hago ahora es abrir project.clj, agregar dependencia allí, ejecutar lein deps restart repl, luego use , require y así sucesivamente.

El problema es que no me gusta reiniciar las respuestas porque el tiempo de inicio es lento y tengo que volver a cargar mis archivos nuevamente.

Entonces, ¿hay una mejor manera de agregar dependencia al proyecto lein? sin reiniciar la respuesta?


Puede utilizar Alembic , un cargador dinámico de classpath y un sistema de resolución de dependencias. Lo bueno es que no carga todas las dependencias de la granada.

Agregue lo siguiente a su .lein/profiles.clj :

{:user {:dependencies [[alembic "0.3.2"]]}}

Luego, en su Repl, simplemente cargue los classpaths que necesita, estos serán extraídos de los repositorios por lein si es necesario:

(require ''alembic.still) (alembic.still/distill ''[enlive "1.1.5"])

(require ''net.cgrand.enlive-html) ahora debería funcionar.


para pruebas rápidas puede usar pomegranate para agregar dependencias sobre la marcha

=> (use ''[cemerick.pomegranate :only (add-dependencies)]) nil => (add-dependencies :coordinates ''[[incanter "1.2.3"]])

para en realidad agregar una dependencia usualmente golpeo

  • Alt-x nrepl-restart
  • ctrl-c ctrl-k para volver a cargar el archivo,
  • ctrl-c alt-n para volver al espacio de nombres i en el búfer

Todo el proceso toma el tiempo de inicio de jvm (lo cual estoy de acuerdo es un poco doloroso) más cinco segundos. Ayuda a mantener su proyecto en un estado en el que cargar un archivo hace todo lo que requiere inicialización.