Risposte:
Dovrai farlo in due passaggi:
Se non si dispone di un repository interno e si sta solo tentando di aggiungere il JAR al repository locale, è possibile installarlo come segue, utilizzando qualsiasi gruppo arbitrario ID / artefatto:
mvn install:install-file -DgroupId=com.stackoverflow... -DartifactId=yourartifactid... -Dversion=1.0 -Dpackaging=jar -Dfile=/path/to/jarfile
Puoi anche distribuirlo nel tuo repository interno se ne hai uno e vuoi renderlo disponibile ad altri sviluppatori della tua organizzazione. Uso solo l'interfaccia basata sul Web del mio repository per aggiungere artefatti, ma dovresti essere in grado di ottenere lo stesso risultato usando mvn deploy:deploy-file ...
.
Quindi aggiornare la dipendenza in pom.xml dei progetti che utilizzano JAR aggiungendo quanto segue all'elemento:
<dependencies>
...
<dependency>
<groupId>com.stackoverflow...</groupId>
<artifactId>artifactId...</artifactId>
<version>1.0</version>
</dependency>
...
</dependencies>
È inoltre possibile specificare una dipendenza non in un repository maven. Potrebbe essere utile quando non esiste un repository centrale maven per il tuo team o se hai un server CI
<dependency>
<groupId>com.stackoverflow</groupId>
<artifactId>commons-utils</artifactId>
<version>1.3</version>
<scope>system</scope>
<systemPath>${basedir}/lib/commons-utils.jar</systemPath>
</dependency>
In realtà, indagando su questo, penso che tutte queste risposte siano errate. La tua domanda è fuorviante a causa del nostro livello di comprensione maven
. E dico il nostro perché mi sto solo presentando maven
.
In Eclipse
, quando si desidera aggiungere un file jar al progetto, normalmente si scarica il barattolo manualmente e quindi lo si rilascia nella directory lib . Con Maven, non lo fai in questo modo. Ecco cosa fai:
dependency
dichiarazione nel tuopom.xml
mvn
Ora maven
si collegherà e scaricherà jar
insieme all'elenco delle dipendenze e risolverà automaticamente eventuali dipendenze aggiuntive che jar
potrebbero aver avuto. Quindi, se jar
è necessario anche il log comune, anche quello verrà scaricato.
Farei questo:
aggiungi la dipendenza che vuoi nel tuo pom:
<dependency>
<groupId>com.stackoverflow...</groupId>
<artifactId>artifactId...</artifactId>
<version>1.0</version>
</dependency>
eseguirlo mvn install
proverà a scaricare il jar e fallirà. Sul processo, ti darà il comando completo di installazione del vaso con il messaggio di errore. Copia quel comando ed eseguilo! facile eh ?!
Presumo che tu stia chiedendo come spingere una dipendenza verso un "noto repository" e non semplicemente chiedendo come aggiornare il tuo POM.
Se sì, allora questo è quello che vuoi leggere.
E per chiunque cerchi di configurare un server di repository interno, guarda qui (metà del problema con l'utilizzo di Maven 2 sta trovando i documenti)