Utilizza un'istanza locale CQ5 come fonte di archivio maven per lo sviluppo, invece di usare l'archivio Day maven.

Nota:

Questo metodo non è ufficialmente supportato.

Soluzione

  1. Installa il servizio cq5-archiva-servlet-1.6.zip. (Potrebbe non riuscire a caricarsi su CQ 5.2.1, ma ignora il messaggio e poi installa.)

  2. Configura il progetto pom.xml per utilizzare l'istanza CQ5 locale come archivio maven

    <repositories>
    <repository>
    <id>localinstance</id>
    <name>CQ 5.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>CQ 5.x localinstance</name>
    <url>http://localhost:4502/maven/repository</url>
    <releases>
    <enabled>true</enabled>
    </releases>
    <snapshots>
    <enabled>true</enabled>
    </snapshots>
    </pluginRepository>
    </pluginRepositories>

     

  3. Inoltre, è possibile utilizzare come dipendenza da padre quanto segue:

        <parent>
            <groupId> com.day</groupId>
            <artifactId> cq5-parent</artifactId> 5.6.<version>0</version>
            (se per esempio la tua istanza è un 5.6.0)
        </parent>

    Il groupId/artifactId è configurabile con la configurazione dello sling, e la versione non è importante. (Ma ha senso usare secondo il target, come 5.2.1/5.3/5.4).

  4. Nel file .m2/settings.xml, aggiungi le seguenti righe per definire il login/password:

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

  5. Inoltre, è possibile aggiungere il proprio jar/pom in "/var/maven/repository" (usando la stessa struttura di maven store di solito)

    Note:

    • Non è possibile sfogliare l'archivio maven con il proprio browser con quel servlet, che restituisce una risposta valida al momento.
    • Ulteriori librerie come maven-sling-plugin e maven-packutil-plugin sono già presenti, per cui non è più necessario accedere al repo giornaliero.
    • Il "/var/maven/tpl/archiva-parent.pom" include l'archivio apache people e ibliblio mirror automaticamente in modo che altre dipendenze possano essere trovate lì, è possibile personalizzarlo se necessario.
    • Si può anche ottenere un file pom generato che include tutte le dipendenze esistenti, in modo da poter facilmente copiare/incollare quelle necessarie per il modulo maven, se non si vuole usare la dipendenza da padre di cui sopra. Ad esempio utilizzando l'URL: http://localhost:4502/maven/dependencies.
    • Puoi usare un archivio maven come proxy in modo che se l'istanza cq5 non è in esecuzione, possa comunque servire i file.

Aiuto rapido per il plugin maven-packutil (che al momento non è un plugin ufficiale, ma utile)

<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>

Scarica

* maven_test.zip
Semplice campione pom.xml con qualche codice sorgente a scopo di test

Questo prodotto è concesso in licenza in base alla licenza di Attribuzione-Non commerciale-Condividi allo stesso modo 3.0 Unported di Creative Commons.  I post su Twitter™ e Facebook non sono coperti dai termini di Creative Commons.

Note legali   |   Informativa sulla privacy online