7.3. Configuración de Maven para utilizar los repositorios del sistema de archivos

Visión General

Cuando no se pueden utilizar repositorios en línea, usted podrá descargar y configurar los repositorios locales requeridos

Procedimiento 7.1.

  1. Descargue los siguientes archivos ZIP que contienen los repositorios requeridos:
  2. Descomprima los archivos ZIP en un sitio arbitrario en un sistema de archivos local.
  3. Agregue entradas de los repositorios descomprimidos al archivo settings.xml de Maven. El siguiente ejemplo de código muestra un perfil con los repositorios , la configuración de autenticación para acceder a los repositorios, y una entrada de activación para el perfil:
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <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/xsd/settings-1.0.0.xsd">
      <localRepository/>
      <profiles>
        <!-- Profile with local repositories required by JBoss BRMS/JBoss BPM Suite -->
        <profile>
          <id>brms-bpms-local-profile</id>
          <repositories>
            <repository>
              <id>jboss-brms-bpmsuite-repository</id>
              <name>BRMS/BPMS 6.1.0 GA Repository</name>
              <url>file://<!-- path to the repository -->/jboss-brms-bpmsuite-6.1.0.GA-redhat-2-maven-repository/maven-repository</url>
              <layout>default</layout>
              <releases>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
              </releases>
              <snapshots>
                <enabled>false</enabled>
                <updatePolicy>never</updatePolicy>
              </snapshots>
            </repository>
          </repositories>
          <pluginRepositories>
            <pluginRepository>
              <id>jboss-brms-bpmsuite-repository</id>
              <name>BRMS/BPMS 6.1.0 GA Repository</name>
              <url>file://<!-- path to the repository -->/jboss-brms-bpmsuite-6.1.0.GA-redhat-2-maven-repository/maven-repository</url>
              <layout>default</layout>
              <releases>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
              </releases>
              <snapshots>
                <enabled>false</enabled>
                <updatePolicy>never</updatePolicy>
              </snapshots>
            </pluginRepository>
          </pluginRepositories>
        </profile>
      </profiles>
    
      <!-- Configuring pre-emptive authentication for the repository server -->
      <server>
        <id>brms-bpms-m2-repo</id>
        <username>admin</username>
        <password>admin</password>
        <configuration>
          <wagonProvider>httpclient</wagonProvider>
          <httpConfiguration>
            <all>
              <usePreemptive>true</usePreemptive>
            </all>
          </httpConfiguration>
        </configuration>
      </server>
      
      <!-- Alternative to enabling pre-emptive authentication - configuring 
           the Authorization HTTP header with Base64-encoded credentials
      <server>
        <id>brms-bpms-m2-repo</id>
        <configuration>
          <httpHeaders>
            <property>
              <name>Authorization</name>
              <value>Basic YWRtaW46YWRtaW4=</value>
            </property>
          </httpHeaders>
        </configuration>
      </server>
      -->
      
      <activeProfiles>
       <!-- Activation of the JBoss BRMS/JBoss BPM Suite profile -->
       <activeProfile>brms-bpms-local-profile</activeProfile>
      </activeProfiles>
    </settings>
Resultado:

Los repositorios Maven son descargados, descomprimidos en un sistema de archivos local, registrados en el archivo settings.xml de Maven, y están listos para ser utilizados cuando se realizan las construcciones Maven.

Resolución de problemas

P: ¿Por qué sigo obteniendo errores al construir o implementar mis aplicaciones?
P: ¿Por qué JBoss Developer Studio está utilizando mi configuración de Maven antigua?
P:
¿Por qué sigo obteniendo errores al construir o implementar mis aplicaciones?
R:
Problema

Cuando construya o implemente un proyecto, fallará con uno o los dos errores siguientes:

  • [ERROR] Failed to execute goal on project PROJECT_NAME
  • Could not find artifact ARTIFACT_NAME

Causa

Su repositorio Maven local en caché podría contener artefactos obsoletos.

Resolución

Para resolver este problema, borre el repositorio local en caché – el directorio ~/.m2/repository/ en Linux o el directorio %SystemDrive%\Users\USERNAME\.m2\repository\ en Windows – y luego ejecute mvn clean install -U. Esta acción forzará a Maven a descargar las versiones correctas de artefactos necesarios para realizar una nueva construcción.

P:
¿Por qué JBoss Developer Studio está utilizando mi configuración de Maven antigua?
R:
Problema

Ha actualizado su configuración Maven, pero esta configuración no se refleja en JBoss Developer Studio.

Causa

Si JBoss Developer Studio está en ejecución en el momento en que modifica su archivo settings.xml de Maven, esa configuración no se reflejará en JBoss Developer Studio.

Resolución

Actualice los parámetros de Maven en el IDE. Desde el menú, seleccione VentanaPreferencias. En la ventana Preferencias, expanda Maven y seleccione Parámetros de usuario. Haga clic en el botón Actualizar parámetros para refrescar los parámetros de usuario Maven en JBoss Developer Studio.
Actualizar los parámetros de usuario de Maven

Figura 7.1. Actualizar los parámetros de usuario de Maven