Añadir una dependencia en Maven

¿Cómo tomo un archivo jar que tengo y lo agrego al sistema de dependencia en maven 2? Seré el mantenedor de esta dependencia y mi código necesita este jar en la ruta de la clase para que se compile.

Tendrás que hacer esto en dos pasos:

1. Proporcione a su JAR un groupId, artifactId y versión y agréguelo a su repository.

Si no tiene un repository interno y está tratando de agregar su JAR a su repository local, puede instalarlo de la siguiente manera, utilizando cualquier groupId / artifactIds arbitrario:

mvn install:install-file -DgroupId=com.stackoverflow... -DartifactId=yourartifactid... -Dversion=1.0 -Dpackaging=jar -Dfile=/path/to/jarfile 

También puede implementarlo en su repository interno si tiene uno, y desea que esté disponible para otros desarrolladores en su organización. Solo uso la interfaz basada en web de mi repository para agregar artefactos, pero usted debe poder lograr lo mismo usando mvn deploy:deploy-file ...

2. Actualice los proyectos dependientes para hacer referencia a este JAR.

Luego actualice la dependencia en el pom.xml de los proyectos que usan el JAR agregando lo siguiente al elemento:

  ...  com.stackoverflow... artifactId... 1.0  ...  

También puede especificar una dependencia que no esté en un repository de maven. Podría ser útil cuando no exista un repository maven central para su equipo o si tiene un servidor CI

   com.stackoverflow commons-utils 1.3 system ${basedir}/lib/commons-utils.jar  

En realidad, al investigar esto, creo que todas estas respuestas son incorrectas. Su pregunta es engañosa debido a nuestro nivel de comprensión de maven . Y digo nuestro porque me acaban de presentar a maven .

En Eclipse , cuando desea agregar un archivo jar a su proyecto, normalmente descarga el jar manualmente y luego lo coloca en el directorio lib . Con Maven, no lo haces de esta manera. Esto es lo que haces:

  • Ir a mvnrespoitory
  • Busque la biblioteca que desea agregar
  • Copie la statement de dependency en su pom.xml
  • reconstruir a través de mvn

Ahora, maven se conectará y descargará el jar junto con la lista de dependencias, y automáticamente resolverá cualquier dependencia adicional que jar pueda haber tenido. Entonces, si el jar también necesita el registro de recursos comunes, también se descargará.

Yo haría esto:

  1. agrega la dependencia que quieras en tu pom:

      com.stackoverflow... artifactId... 1.0  

  2. ejecuta mvn install intentará descargar el jar y fallará. En el proceso, le dará el comando completo de instalar el jar con el mensaje de error. Copia ese comando y ejecútalo! fácil ¿eh?

Asumiré que está preguntando cómo enviar una dependencia a un “repository conocido” y no simplemente preguntando cómo actualizar su POM.

Si es así, entonces esto es lo que quiere leer.

Y para cualquiera que busque configurar un servidor de repository interno, mira aquí (la mitad del problema con el uso de Maven 2 es encontrar los documentos)