2016-04-17 20 views
7

Ho una domanda sullo sviluppo di una libreria Clojure, che non trova risposta nel flusso di lavoro suggerita per Biblioteca Sviluppo e distribuzione, come descritto qui: http://clojure-doc.org/articles/ecosystem/libraries_authoring.htmlCome utilizzare un repository locale per una libreria Clojure durante lo sviluppo iniziale?

Sto sviluppando una biblioteca e vuole testare questo in un progetto clojure. In questo progetto dovrò aggiungere la libreria in fase di sviluppo come dipendenza. Esiste un'alternativa per "lein deploy clojars" che distribuirà la mia libreria ad un repository locale? Se sì, come dovrei impostare: dipendenze per questo nel progetto di test? Nota che userò anche le librerie in clojars nel progetto che uso per testare la libreria in fase di sviluppo.

Quindi, dove dovrei distribuire una libreria Clojure in sviluppo su, un repository locale forse, in modo che possa essere utilizzato dai progetti che alpha testano la libreria. Come dovrebbero i progetti di test affrontare questo. Mi piacerebbe sapere come questo influenzi 1) il file project.clj per il progetto di sviluppo della libreria e 2) il file project.clj per il progetto che verifica la libreria in fase di sviluppo.

risposta

11

lein install fa il lavoro:

$ lein install -h 
Install jar and pom to the local repository; typically ~/.m2. 

Nel progetto libreria di eseguire lein install ei file jar e pom biblioteca verrà installato nella directory ~/.m2.

Successivamente, quando si crea un altro progetto che dipende dalla libreria, lein troverà i file binari in ~/.m2.

~/.m2 è un percorso predefinito del repository Maven locale che è uno dei percorsi utilizzati da lein durante la risoluzione delle dipendenze. Funziona anche come cache per i repository remoti in cui sono archiviati gli artefatti scaricati da Maven Central o Clojars.