in

Maven – Repositorios

repository structure

¿Qué es un repositorio Maven?

En la terminología de Maven, un repositorio es un directorio donde se almacenan todos los archivos jar del proyecto, jar de la biblioteca, complementos o cualquier otro artefacto específico del proyecto y Maven puede usarlo fácilmente.

Los repositorios de Maven son de tres tipos. La siguiente ilustración dará una idea de estos tres tipos.

Estructura del repositorio

Repositorio local

El repositorio local de Maven es una ubicación de carpeta en su máquina. Se crea cuando ejecuta cualquier comando de maven por primera vez.

El repositorio local de Maven mantiene todas las dependencias de su proyecto (frascos de biblioteca, frascos de complementos, etc.). Cuando ejecuta una compilación de Maven, Maven descarga automáticamente todos los archivos jar de dependencia en el repositorio local. Ayuda a evitar referencias a dependencias almacenadas en una máquina remota cada vez que se construye un proyecto.

El repositorio local de Maven lo crea de forma predeterminada Maven en el directorio% USER_HOME%. Para anular la ubicación predeterminada, mencione otra ruta en el archivo settings.xml de Maven disponible en el directorio% M2_HOME% conf.

<settings xmlns = "http://maven.apache.org/SETTINGS/1.0.0"
   xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation = "http://maven.apache.org/SETTINGS/1.0.0 
   http://maven.apache.org/xsd/settings-1.0.0.xsd">
   <localRepository>C:/MyLocalRepository</localRepository>
</settings>

Cuando ejecuta el comando Maven, Maven descargará las dependencias a su ruta personalizada.

Repositorio central

El repositorio central de Maven es un repositorio proporcionado por la comunidad de Maven. Contiene una gran cantidad de bibliotecas de uso común.

Cuando Maven no encuentra ninguna dependencia en el repositorio local, comienza a buscar en el repositorio central utilizando la siguiente URL: https://repo1.maven.org/maven2/

Los conceptos clave del repositorio central son los siguientes:

  • Este repositorio está gestionado por la comunidad de Maven.
  • No es necesario configurarlo.
  • Requiere acceso a Internet para ser buscado.

Para navegar por el contenido del repositorio central de maven, la comunidad de maven ha proporcionado una URL: https://search.maven.org/#browse. Con esta biblioteca, un desarrollador puede buscar todas las bibliotecas disponibles en el repositorio central.

Repositorio remoto

A veces, Maven tampoco encuentra una dependencia mencionada en el repositorio central. Luego detiene el proceso de compilación y envía el mensaje de error a la consola. Para prevenir tal situación, Maven proporciona el concepto de Repositorio remoto, que es el repositorio personalizado del desarrollador que contiene las bibliotecas necesarias u otros archivos jar del proyecto.

Por ejemplo, utilizando POM.xml mencionado a continuación, Maven descargará la dependencia (no disponible en el repositorio central) de los repositorios remotos mencionados en el mismo pom.xml.

<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/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.companyname.projectgroup</groupId>
   <artifactId>project</artifactId>
   <version>1.0</version>
   <dependencies>
      <dependency>
         <groupId>com.companyname.common-lib</groupId>
         <artifactId>common-lib</artifactId>
         <version>1.0.0</version>
      </dependency>
   <dependencies>
   <repositories>
      <repository>
         <id>companyname.lib1</id>
         <url>http://download.companyname.org/maven2/lib1</url>
      </repository>
      <repository>
         <id>companyname.lib2</id>
         <url>http://download.companyname.org/maven2/lib2</url>
      </repository>
   </repositories>
</project>

Secuencia de búsqueda de dependencias de Maven

Cuando ejecutamos los comandos de compilación de Maven, Maven comienza a buscar bibliotecas de dependencia en la siguiente secuencia:

  • Paso 1 – Buscar dependencia en el repositorio local, si no se encuentra, vaya al paso 2; de lo contrario, realice el procesamiento adicional.

  • Paso 2 – Busque la dependencia en el repositorio central, si no se encuentra y se menciona el repositorio / repositorios remotos, pase al paso 4. De lo contrario, se descarga en el repositorio local para referencia futura.

  • Paso 3 – Si no se ha mencionado un repositorio remoto, Maven simplemente detiene el procesamiento y arroja un error (No se puede encontrar la dependencia).

  • Paso 4 – Buscar dependencia en repositorios o repositorios remotos, si se encuentra, se descarga en el repositorio local para referencia futura. De lo contrario, Maven detiene el procesamiento y arroja un error (no se puede encontrar la dependencia).

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

arp table

Tabla ARP – javatpoint

apple touch icon@2

c #: uso de .Select y .Where en una sola instrucción LINQ