Welcome to CQBlueprints - A resource for your Adobe CQ 5.4, 5.5, 5.6 and AEM6 projects. Get your CQ project on the right track.
Customers who (wisely) choose Maven as their build tool for CQ development projects should setup their own shared team Maven Repository and configure it to proxy the repo.adobe.com repository to provide access to the CQ related artifacts for your team. There are other Maven Repsository management servers available, however, since Nexus is now being used actively to manage the Maven Central repository it has become the defacto standard for Maven Repository management tools. As a result, we recommend the use of Nexus over any other Maven Repository management tools. Even Adobe migrated their repository in early 2012 from Archiva to Nexus.
Nexus is very easy to install and there are detailed instructions on this page. We recommend following the instructions for installing the Nexus WAR file on Apache Tomcat as you are likely to, or already do, want to install other Java Web Apps as part of your development environment (e.g. Jenkins).
Once you have Nexus up and running, create a new proxy repository and give it a Repository ID like adobe-cq and a Repository Name Adobe CQ. In the Remote Storage Location setting, enter http://repo.adobe.com/nexus/content/groups/public/
Due to configuration options set on Adobe's Nexus server, be sure to change the Auto blocking active setting in the above dialog to false otherwise your Nexus will mark the Adobe repository as being offline and will not proxy its contents for you as expected.
This specific issue is discussed on the Nexus Users mailing list, archived here.
Configure the public group repository to include the the newly proxied adobe-cq repository.
In the above screen shot when configuring the public group repository, we have placed the Adobe CQ proxy above Maven Central. This means that the artifacts in the Adobe CQ proxy will be given priority over the ones in Maven Central. This is the correct configuration for CQ projects. However, if you or your team also work on non-CQ projects in addition to CQ projects, you will need to evaluate if this configuration works for you.
Once you have Nexus installed and have set up a proxy repository for the Adobe CQ repository, you need to change the Maven settings.xml file on each developer's machine to make use of the new Nexus repository (you should also make changes to any other places that Maven is used, like by Jenkins on your Continuous Integration server for example).
Below is an example of how to configure your team's Nexus repository as the mirror for all repositories that Maven can use.
<?xml version="1.0" encoding="UTF-8"?> <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"> <mirrors> <mirror> <id>dev.example.com</id> <mirrorOf>*</mirrorOf> <url>http://dev.example.com/nexus/content/groups/public/</url> </mirror> </mirrors> <profiles> <profile> <id>nexus</id> <activation> <activeByDefault>true</activeByDefault> </activation> <repositories> <repository> <id>central</id> <url>http://central</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>central</id> <url>http://central</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> </pluginRepositories> </profile> </profiles> </settings>
Do you find the information on this site useful? Do you think we should add an article on a specific subject? We'd like to hear from you. Please drop us an email @ firstname.lastname@example.org
Search CQ Related Information