Maven Repository Specifications
Maven Repository Specifications
Dependent on | By | Documentation |
---|---|---|
Maven repository manager server provisioning | IT Operations | Infrastructure Specifications |
Overview
This section provides details on the Maven Repository Manager. The Maven Repository Manager is an essential component for team development of Maven based projects. The Maven Project site explains why and provides a list of available Repository Managers.
Recommended Repository Structure
This section provides the information on the repository structure for Elastic Path projects. Repositories are collections of the artifacts you reuse to build your software. The image below shows the repository structure for Elastic Path projects. In the image, the main repository group is the <project> EP Repository Group. You can get all of the dependencies to build Elastic Path from this group. Continuous integration builds deploy generated artifacts to either the <project> EP Snapshots or the <project> EP Releases repository, depending on whether the artifacts have SNAPSHOT or release versions.
Proxy External Repositories
This section provides the proxy information for external Maven repositories.
The repository order is important and should match the table below. Using a different repository sequence can result in build errors.
Repository | Provider | Policy | URL | Credentials Required |
---|---|---|---|---|
Maven Central | Maven2 | Release | http://central.maven.org/maven2/ | No |
Elastic Path Public | Maven2 | Release | https://repository.elasticpath.com/nexus/content/repositories/public/ | Yes |
Elastic Path Cortex | Maven2 | Release | https://repository.elasticpath.com/nexus/content/repositories/cortex/ | Yes |
Elastic Path Commerce Engine | Maven2 | Release | https://repository.elasticpath.com/nexus/content/repositories/commerce-e... | Yes |
Elastic Path Accelerators | Maven2 | Release | https://repository.elasticpath.com/nexus/content/repositories/accelerators/ | Yes |
Java Net Repository For Maven | Maven2 | Release | https://maven.java.net/content/repositories/releases/ | No |
Sonatype | Maven2 | Release | https://repository.sonatype.org/content/groups/forge | No |
Springsource Milestone | Maven2 | Release | https://maven.springframework.org/milestone/ | No |
Groovy Repository For Maven | Maven2 | Release | https://dl.bintray.com/groovy/maven | No |
Your Elastic Path Support Portal page lists your Maven credentials. If you do not have these credentials, submit a ticket on the page.
Configuring Local Repositories and Groups
This section provides instructions to create local repositories and groups and build the repository hierarchy, after you configure all external proxies.
- Create a hosted repository (e.g. <project> EP Snapshots) with a "snapshot" policy.
- Create a hosted repository (e.g. <project> EP Releases) with a "release" policy.
- Create an External Proxy Repository Group. Add all external proxies to it in the order defined in the Proxy external respositories section.
- Create a <project> EP Repository Group. Add the hosted repositories and the External Proxy Repository Group to it.
Manual Uploads
This section provides information on manually uploading artifacts to your Maven repository. Some artifacts cannot be obtained from public Maven repositories because of licensing restrictions. You must upload these artifacts manually to your Maven repository.
Artifact | Source | Elastic Path Commerce Dependency |
---|---|---|
MySQL JDBC driver | Download platform independent version 5.1.44 from https://dev.mysql.com/downloads/connector/j/ |
<groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.44</version> |