2014-06-27 9 views
5

Questa è una questione del tutto newbie da un programmatore Java cercando di imparare Erlang. Qual è l'equivalente di un file JAR Java in Erlang con cui è possibile includere le librerie di terze parti in un'applicazione Erlang?equivalente di file JAR Java in Erlang

L'altro giorno ho fatto una copia di mochijson2.erl nel mio progetto e ha funzionato, ma mi chiedo se c'è un modo migliore/più formale di scoprire e includere le biblioteche nel mondo di Erlang.

+1

stai chiedendo circa l'imballaggio o la gestione delle dipendenze? Questi sono due problemi correlati ma distinti. – chrylis

risposta

5

Se si ha familiarità con Maven (o suoi fratelli), l'analogo Erlang è Rebar.

è possibile creare un rebar.config (simile a un file POM) con il contenuto

{deps, [ 
    {mochiweb, "2.9.0", {git, "https://github.com/mochi/mochiweb.git", {tag, "v2.9.0"}}} 
]}. 

Poi rebar get-deps && rebar compile recupererà mochiweb (ed eventuali dipendenze si dichiara), costruire le dipendenze, e costruire il proprio codice.

+0

grazie, e suppongo che la dipendenza che viene tirata deve essere conforme alle convenzioni della barra. Sto probabilmente chiedendo troppo, ma c'è un modo per trasformare una struttura di progetto di Erlang ad hoc in una struttura compatibile tondo per cemento armato e più suscettibili di condivisione con gli altri? Sarebbe molto utile per i principianti come me. –

+0

Finché la vostra struttura del progetto è conforme agli standard di OTP, che possa funzionare con Rebar. Inoltre, qui si fa non è necessario bisogno di avere 'rebar.config' se si vuole compilare il progetto (come è necessario avere' pom.xml' in Maven), anche se ti dà un sacco di possibilità. Puoi semplicemente avere una cartella '/ src' con il codice sorgente e il file' * .app.src' e funzionerà. – rpozarickij

+0

Fantastico. Grazie! –