Maven - Dependencias externas
Como sabes, Maven realiza la gestión de dependencias utilizando el concepto de Repositorios. Pero, ¿qué sucede si la dependencia no está disponible en ninguno de los repositorios remotos y el repositorio central? Maven proporciona una respuesta para tal escenario utilizando el concepto deExternal Dependency.
Por ejemplo, hagamos los siguientes cambios en el proyecto creado en el capítulo 'Creación de un proyecto Java'.
Añadir lib carpeta a la carpeta src.
Copie cualquier jar en la carpeta lib. Hemos usadoldapjdk.jar, que es una biblioteca auxiliar para operaciones LDAP.
Ahora la estructura de nuestro proyecto debería verse como la siguiente:
Aquí tienes tu propia biblioteca, específica para el proyecto, que es un caso habitual y contiene archivos jar, que pueden no estar disponibles en ningún repositorio para que Maven los descargue. Si su código está usando esta biblioteca con Maven, entonces la compilación de Maven fallará ya que no puede descargar o hacer referencia a esta biblioteca durante la fase de compilación.
Para manejar la situación, agreguemos esta dependencia externa a maven pom.xml de la siguiente manera.
<project xmlns = "http://maven.apache.org/POM/4.0.0"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.companyname.bank</groupId>
<artifactId>consumerBanking</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>consumerBanking</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>ldapjdk</groupId>
<artifactId>ldapjdk</artifactId>
<scope>system</scope>
<version>1.0</version>
<systemPath>${basedir}\src\lib\ldapjdk.jar</systemPath>
</dependency>
</dependencies>
</project>
Mire el segundo elemento de dependencia en dependencias en el ejemplo anterior, que aclara los siguientes conceptos clave sobre External Dependency.
Las dependencias externas (ubicación del jar de la biblioteca) se pueden configurar en pom.xml de la misma manera que otras dependencias.
Especifique groupId igual que el nombre de la biblioteca.
Especifique artifactId igual que el nombre de la biblioteca.
Especifique el alcance como sistema.
Especifique la ruta del sistema relativa a la ubicación del proyecto.
Espero que ahora tenga claro las dependencias externas y podrá especificar dependencias externas en su proyecto Maven.