2011-08-18 17 views
30

Come faccio a scaricare JAR durante una compilazione di script Maven?Come scaricare semplicemente un JAR usando Maven?

+0

Download to where? Con o senza un POM? Vedi anche: http://stackoverflow.com/questions/1776496/a-simple-command-line-to-download-a-remote-maven2-artifact-to-the-local-reposito –

risposta

6

Normalmente non si usa Maven per "solo il download", ma per il processo di compilazione. Così normalmente, si eseguono le seguenti operazioni:

  1. Definire un nuovo progetto definendo l'archetipo del progetto e alcune proprietà necessarie.
  2. Definire come dipendenza la libreria che si desidera utilizzare.
  3. Run Maven con mvn compile

Come effetto collaterale, si avrà scaricato la libreria al repository Maven locale. Esistono molti plug-in per fare qualcosa con le dipendenze, quindi ad es. uno sguardo allo Maven Dependency plugin.

38

Maven non funziona così. Ecco la cosa più vicina che avrai a mia conoscenza:

mvn dependency:get -DremoteRepositories=http://repo1.maven.org/maven2/ \ 
        -DgroupId=junit -DartifactId=junit -Dversion=4.8.2 \ 
        -Dtransitive=false 

Nota che tutti i parametri tranne transitivi sono obbligatori.
Si noti inoltre che Maven scaricherà il jar nel repository locale e non esiste un modo sensato (che io sappia) di copiarlo in una directory locale.

Riferimento:

+2

repoUrl deprecato e non richiesto ora? – marstone

+0

@marstone è 'RemoteRepositories' ora. grazie –

+1

-Ddest = Path/to/your/Destintation dovrebbe funzionare? –

4

Se si desidera solo per scaricare un JAR una volta da un mirror Maven suggerisco si può solo farlo manualmente:

Per Maven 1 :
http://mirrors.ibiblio.org/pub/mirrors/maven/

Per Maven 2:
http://mirrors.ibiblio.org/pub/mirrors/maven2/

Questi sono i repository (uno specchio comunque) che Maven otterrà i suoi JAR da - si può facilmente accedere al web browser di vostra scelta e scaricare i JAR ecc Basta sfogliare la gerarchia (sembra una qualsiasi gerarchia di packag Java) finché non trovi il manufatto, quindi scegli la versione giusta e sei bravo.

Per esempio la versione 3.6.6.Final di hibernate-core dal gruppo org.hibernate che si può trovare qui:

http://mirrors.ibiblio.org/pub/mirrors/maven2/org/hibernate/hibernate-core/3.6.6.Final/

+1

+1 o usa http://mvnrepository.com/, ha un'interfaccia di ricerca e fornisce collegamenti diretti agli artefatti. –

+0

I link ibiblio sopra erano directory vuote quando li ho provati. Il link di Sean a mvnrepository.com ha funzionato bene. Grazie! –

29

Oppure dal 3.1, semplicemente come mvn dependency:get -Dartifact=org.springframework:spring-instrument:3.2.3.RELEASE

5

Vedere How to use Maven pom to download jar files only. Questo ha funzionato davvero bene per me.

Il mio caso d'uso era che volevo scaricare alcuni dei gavs di dipendenza da distribuire a un server QA e lo stavo facendo manualmente (al di fuori del build di Maven). Non sono sicuro di quale sia il tuo caso d'uso.

1

Vai a http://mvnrepository.com. Cerca l'artefatto che desideri scaricare, scegli la versione dall'elenco dei risultati e scarica semplicemente il pacchetto.

15

Nota: Questa risposta è per downloading the jars directly from maven without any scripts [Questo è il modo in cui Google mi ha indirizzato qui]

Supponendo mvn dipendenza è come questo:

<dependency> 
    <groupId>com.zaxxer</groupId> 
    <artifactId>HikariCP</artifactId> 
    <version>2.4.7</version> 
</dependency> 

Goto http://search.maven.org e la ricerca di g:"com.zaxxer" AND a:"HikariCP" AND v:"2.4.7" (semplicemente alla ricerca di HikariCP anche potrebbe essere necessario selezionare l'appropriato GroupId e Version dai risultati)

Nel Search Results -> Download colonna, dovresti vedere jar javadoc.jar sources.jar disponibile per il download diretto

1

Puoi configurare un pom.xml per definire le tue dipendenze (i vasi che vuoi copiare). Quindi utilizzare l'obiettivo dependency:copy-dependencies per copiare i vasi nella posizione desiderata.

Problemi correlati