Il nostro gruppo è un po 'nuovo allo sviluppo basato su JVM. Stiamo sviluppando applicazioni composte da molte altre librerie.Gestione delle dipendenze con applicazioni Play 2.0
Troviamo che il framework Play sia molto interessante per lo sviluppo di applicazioni Web. Il framework è ottimo, ma la gestione delle dipendenze per le nostre librerie sviluppate localmente è alquanto irritante. Stiamo usando RC2 di Play 2.0 e, sebbene siamo in grado di caricare i cambiamenti nelle nostre librerie in Play, è sicuramente un processo scomodo che interrompe il normale processo di riproduzione.
Quello che stiamo facendo è spingere le nostre librerie nel nostro repository Maven locale (sul computer di ogni sviluppatore) e poi importare quelle stesse librerie nel progetto Play. Funziona, ma come ho detto, è imbarazzante.
Ci sono delle best practice che dovremmo impiegare che renderanno questo lavoro un po 'più fluido?
FWIW, stiamo usando IntelliJ 11,0 (Ultimate)
============ EDIT ============
I' Sto ottenendo buone risposte su come migliorare il mio processo di costruzione di Maven, e lo apprezzo molto. Tuttavia, questa non è esattamente la risposta che sto cercando.
Per fare questo concreto, supponiamo che sto costruendo sia un servizio che un'applicazione Web per il monitoraggio/gestione del servizio. Il servizio è un semplice progetto Java/Scala e l'app Web è un gioco! progetto. Chiameremo questi "Servizi" e "App". (Si prega di non snocciolare su questa struttura proposta, lo sto semplificando ai fini della domanda)
In Eclipse o IntelliJ, posso aggiungere il modulo 'Servizio' (o Progetto per Eclipse) come dipendenza di il progetto 'App'. Ciò consente un rapido turnaround dello sviluppatore quando si apportano modifiche nella libreria 'Service' (ad esempio, aggiungo una proprietà a un modello). Ricompilare ed eseguire è un paio di ordini di grandezza più veloce di compilare, impacchettare, distribuire, importare e ricaricare il browser.
Sulla base della mia lettura della documentazione di Play 2.0 e SBT, la mia unica vera risposta è di rendere "Service" un sottoprogetto di "App". C'è una risposta migliore a questo?
Apprezzo quello che stai dicendo, ma stai ancora cercando di migliorare un processo che sto cercando di eliminare. Ho intenzione di modificare la domanda per chiarire questo un po '. –
@AndyDavis vedi aggiornamento –
Grazie ancora per l'input. Se tu potessi dare un'occhiata al mio esempio e vedere se i sottoprogetti sono la strada da percorrere, lo apprezzerei. –