7.4. Configurer Maven pour utiliser les référentiels en ligne

Les référentiels en ligne nécessaires pour les applications Red Hat JBoss BPM Suite sont situés sur https://maven.repository.redhat.com/ga/.
Si vous n'avez pas configuré le référentiel Maven lors de l'installation, vous pouvez le configurer en utilisant la procédure suivante. (Il est également possible de le faire en utilisant le fichier POM du projet, mais cela n'est pas recommandé.)

Procédure 7.2. Configurer Maven pour utiliser les référentiels en ligne

  1. Ajoutez des entrées aux référentiels en ligne et la configuration de l'authentification pour y accéder au fichier settings.xml Maven tel que dans l'exemple de code ci-dessous :
    <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">
    
      <profiles>
        <!-- Profile with online repositories required by BRMS/BPMS -->
        <profile>
          <id>brms-bpms-online-profile</id>
          <repositories>
            <repository>
              <id>jboss-ga-repository</id>
              <url>http://maven.repository.redhat.com/techpreview/all</url>
              <releases>
                <enabled>true</enabled>
              </releases>
              <snapshots>
                <enabled>false</enabled>
              </snapshots>
            </repository>
          </repositories>
          <pluginRepositories>
            <pluginRepository>
              <id>jboss-ga-plugin-repository</id>
              <url>http://maven.repository.redhat.com/techpreview/all</url>
              <releases>
                <enabled>true</enabled>
              </releases>
              <snapshots>
                <enabled>false</enabled>
              </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 BRMS/BPMS profile -->
        <activeProfile>brms-bpms-online-profile</activeProfile>
      </activeProfiles>
    
    </settings>
  2. Si vous avez modifié le fichier settings.xml alors que JBoss Developer Studio était en cours d'exécution, vous devrez réactualiser les paramètres Maven dans l'IDE. À partir du menu, sélectionnez WindowPréférences. Dans la fenêtre Préférences, agrandissez Maven et sélectionnez Paramètres utilisateur. Cliquez sur le bouton Paramètres de mise à jour pour réactualiser les paramètres de l'utilisateur Maven dans JBoss Developer Studio.
    Mise à jour des paramètres de configuration de l'utilisateur Maven

    Figure 7.2. Mise à jour des paramètres de configuration de l'utilisateur Maven

Résultat

Maven a été configuré pour utiliser les référentiels en ligne fournis pour votre produit Red Hat JBoss.

Important

Si votre référentiel Maven local mis en cache contient des artefacts obsolètes, vous risquez de rencontrer un des messages d'erreur Maven suivants quand vous créez ou déployez votre projet :
  • Missing artifact ARTIFACT_NAME
  • [ERROR] Failed to execute goal on project PROJECT_NAME; Could not resolve dependencies for PROJECT_NAME
Pour résoudre ce problème, supprimez le référentiel local mis en cache : le répertoire ~/.m2/repository/ sur Linux ou le répertoire %SystemDrive%\Users\USERNAME\.m2\repository\ sur Windows. Cela obligera Maven à télécharger les versions correctes des artefacts nécessaires lors de la génération suivante.