2010-01-12 14 views
5

utilizziamo Gradle per la creazione di progetti Java e al momento disponiamo di repository Ivy per archiviare gli artefatti di terze parti e anche per pubblicare le nostre risorse personali (il repo viene creato utilizzando gli script Gant e le attività Ivy ANT). ma la gestione dei pronti contro termine è fondamentale.
Gradle è in grado di funzionare anche con un repository Maven, quindi passare a un gestore di artefatti Maven come Archiva o Nexus è un'opzione, ma forse non necessaria. conosci qualche strumento o procedura migliore di quanto possa aiutarci a costruire e mantenere i repository di Ivy?Eventuali best practice o strumenti per i repository Ivy?

solo per essere chiari: abbiamo già letto i tutorial e altro ancora e abbiamo capito come farlo, ma è ancora fondamentale da mantenere.

+0

La domanda non è molto chiara, IMO. –

+0

infatti, ho cambiato il titolo della domanda –

risposta

6

In passato, ho utilizzato solo un repository di edera per piccoli repository privati ​​che pubblicavano artefatti usando semplici protocolli di basso livello come un sito FTP. (Tutto il sito ha bisogno è un layout directory di versione e di un file diivy.xml che descrive le arifacts)

The Maven basato infrastrutture repository è ora così pervasiva, con alcuni molti progetti di usarlo, è quasi inutile per promuovere un'alternativa standard di gestione del repository.

Sonatype (azienda dietro Maven) rende disponibile a tutti il ​​proprio repository, Nexus, perché è nell'interesse di tutti mantenere sotto controllo i requisiti di larghezza di banda per Maven central.

Per fortuna, l'edera gioca bene con Maven che significa che puoi sfruttare il meglio di entrambi i mondi.

0

A mio parere non c'è molto nel repository di Ivy su cui lavorare perché funziona solo. Cosa non puoi fare con le attività di Ivy's Ant che puoi fare direttamente dal file system, semplice come quello.

In effetti qualcosa come cambiare il nome del manufatto può essere difficile ma poi di nuovo è qualcosa che non dovresti fare comunque.

+1

come gestisci il fatto che la maggior parte delle librerie non spedisce un descrittore ivy.xml? scrivi te stesso, converti da Maven e togli il cruft, ... ho la sensazione di perdere tempo a conservare artefatti mentre non dovrei –

+0

Generalmente convertiamo la base da Maven * (se disponibile) *, vedi se è abbastanza buono e accordare se necessario. Di solito la base di Maven ha dipendenze extra che devono essere guardate attraverso, ma come è stato fatto finora dagli artefatti base generati. – Esko

1

Ho creato un post di blog su my Ivy repository layout and choices. Potresti avere requisiti diversi, ma penso che sia sempre opportuno controllare le soluzioni di altri per ottenere qualche idea ...

1

C'è un progetto comunitario chiamato Ivy Roundup che mira a creare un repository di edy coerente e aggiornato di comune librerie di terze parti. Potrebbe essere una buona idea abbinare le convenzioni di denominazione utilizzate lì, o anche meglio, ottenere moduli da lì usando lo <ivy:install> task.

0

Quello che sto facendo in pratica quando ho bisogno di una libreria di terze parti è di cercarlo nel MVN repository e quindi fare clic sulla scheda "Ivy" per ottenere la dipendenza Ivy per il mio ivy.xml.