Utiliser une instance CQ5 locale comme source de référentiel Maven pour le développement, au lieu d'utiliser le référentiel Maven Day.

Remarque :

Cette méthode n'est pas officiellement prise en charge.

Solution

  1. Installer le cq5-archiva-servlet-1.6.zip. (Il se peut que le chargement ne fonctionne pas avec CQ5.2.1, dans ce cas ignorer le message puis procéder à l'installation).

  2. Configurer le projet pom.xml afin d'utiliser l'instance CQ5 locale comme référentiel Maven
    .

    <repositories>
    <repository>
    <id>localinstance</id>
    <name>CQ5.x localinstance</name>
    <url>http://localhost:4502/maven/repository</url>
    <releases>
    <enabled>true</enabled>
    </releases>
    <snapshots>
    <enabled>true</enabled>
    </snapshots>
    </repository>
    </repositories>
    <pluginRepositories>
    <pluginRepository>
    <id>localinstance</id>
    <name>CQ5.x localinstance</name>
    <url>http://localhost:4502/maven/repository</url>
    <releases>
    <enabled>true</enabled>
    </releases>
    <snapshots>
    <enabled>true</enabled>
    </snapshots>
    </pluginRepository>
    </pluginRepositories>

     

  3. En outre, vous pouvez utiliser comme dépendance parent ce qui suit :

        <parent>
    <groupId>com.day</groupId>
    <artifactId>cq5-parent</artifactId>
    <version>5.6.0</version> (if for example your instance is a 5.6.0)
    </parent>

    Le groupId / artifactId est configurable avec la configuration de Sling, et la version n'est pas importante. (Mais il s’avère judicieux de l’utiliser selon la cible, telle que 5.2.1/5.3/5.4).

  4. Dans le fichier.m2/settings.xml, ajoutez les lignes suivantes pour définir le nom d’utilisateur / mot de passe :

    <server>
    <id>localinstance</id>
    <username>admin</username>
    <password>admin</password>
    </server>

  5. En outre, vous pouvez ajouter votre jar / pom dans le dossier « /var/maven/repository » (en utilisant la même structure que le magasin maven hbituellement).

    Remarques :

    • Vous ne pouvez pas vraiment parcourir le référentiel maven avec votre navigateur avec cette servlet, il renvoie une réponse valide à l'instant présent.
    • Des librairies supplémentaires comme maven-sling-plugin et maven-packutil-plugin sont déjà présentes, donc l’accès au référentiel n’est plus nécessaire pour eux.
    • « /var/maven/tpl/archiva-parent.pom » inclut le référentiel de personnes Apache et le miroir ibliblio automatiquement afin que d’autres dépendances puissent être trouvées dans ce panneau, vous pouvez le personnaliser si nécessaire.
    • Vous pouvez également obtenir un fichier pom généré comprenant toutes les dépendances existantes afin de copier / coller facilement ces éléments dont vous avez besoin pour le module maven si vous ne souhaitez pas utiliser la dépendance parent ci-dessus. Par exemple à l'aide de l'url : http://localhost:4502/maven/dependencies.
    • Vous pouvez utiliser une archive maven sous forme de proxy si votre instance CQ5 ne fonctionne pas, celle-ci pouvant toujours héberger les fichiers.

Assistant rapide pour le maven-packutil-plugin (qui est utile bien qu’il ne soit pas actuellement un plugin officiel)

<plugin>
<groupId>com.day.cq.tools</groupId>
<artifactId>maven-packutil-plugin</artifactId>
<version>0.0.1</version>
<configuration>
<targetURL>http://localhost:4502</targetURL>
<user>admin</user>
<password>admin</password>
<workspace>crx.default</workspace>
</configuration>
<executions>
<execution>
<id>install-package</id>
<goals>
<goal>install</goal>
</goals>
</execution>
</executions>
</plugin>

Telechargement

* maven_test.zip
Exemple de pom.xml simple avec code source pour le test de l'objectif

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne