Esiste un plug-in maven che è possibile utilizzare per convertire le dipendenze Maven Pom comprese le dipendenze transitive in un file ivy.xml?Dipendenze Maven POM nel file ivy.xml
risposta
Ecco uno script Ant
<project name="convertPomToIvy" basedir="." default="all"
xmlns:ivy="antlib:fr.jayasoft.ivy.ant"
xmlns:ac="antlib:net.sf.antcontrib">
<path id="antlib.classpath">
<fileset dir="/path/to/ivy/libs" includes="*.jar"/>
</path>
<taskdef uri="antlib:fr.jayasoft.ivy.ant"
resource="fr/jayasoft/ivy/ant/antlib.xml"
classpathref="antlib.classpath"
loaderref="antlib.classpath.loader"/>
<target name="convert">
<ivy:convertpom pomFile="pom.xml" ivyFile="ivy.xml" />
</target>
</project>
Secondo Ivy 1.3-RC1 Changelog
NUOVO: compatibilità pom maven2: la maggior parte delle resolver sono ora in grado di gestire m2 pom come metadati del progetto e non v'è un compito nuova convertpom in grado di convertire un file pom a un file di edera (IVY-140)
Questa trasformazione è spiegata con dettagli moiré in this blog post.
Ho saputo che non è il maven, ma il lato Ivy, ma comunque sembra esistere qualcosa, no? "Dovrebbe" essere possibile convertire il codice (available on the web) in un plug-in maven per fare in modo che questa trasformazione sia diretta da Maven, se lo si desidera.
ritengo sia meglio dipendere unicamente su Apache, per quanto possibile. Quindi ecco il file di build ant che ho eseguito con successo.
È richiesta una sola riga come specificato in http://ant.apache.org/ivy/history/trunk/use/convertpom.html.
<project
name="convertPomToIvy"
basedir="." default="all"
xmlns:ivy="antlib:org.apache.ivy.ant">
<target name="convert">
<ivy:convertpom pomFile="pom.xml" ivyFile="ivy.xml" />
</target>
</project>
Potresti dire come gestiresti questo. Molte persone hanno sentito parlare di formica, ma molti di noi hanno cercato molto duramente di evitare di doverli imparare o usare. (Ho appena ricevuto "BUILD FAILED /Users/james/workspace/JavaSignatureParser/foo.xml:7: Problema: impossibile creare un'attività o digitare antlib: org.apache.ivy.ant: convertpom Causa: il nome non è definito. "quando ho provato l'ovvio" ant -f foo.xml convert "- ma non so o mi importa molto di ant ...) –
Se devi usare Ivy, devi usare Ant. Insegnare come usare Ant va oltre lo scopo qui. AFA chiunque abbia utilizzato Ant, eseguirà semplicemente il file ant da eclipse. –
Seguire il collegamento fornito per org.apache.ivy.ant. –
Sì, sono a conoscenza dell'attività fr.jayasoft.ivy.ant Ant, tuttavia sto cercando un plug-in Maven! – JavaRocky
Qual è l'usecase? Sono un grande fan dell'edera ma spendo la maggior parte del mio tempo ad integrarlo con le tecnologie Maven, non il contrario :-) –