A Maven2 Repository : An Introduction

Maven repository Types:
- Public remote external repository: This
public external repository exists at ibiblio.org and maven synchronizes with
this repository.
- Private remote internal repository: We set up
this repository and make changes in the maven's pom.xml or settings.xml file
to use
this repository.
- Local repository: This repository is
maintained by the developer and stays on the developer's machine. It is
synchronous to the maven repository defined in the settings.xml file that
exists in the .m2 directory at its standard location i.e. C:\Documents and Settings\Administrator.
If no private internal repository is setup and not listed in the pom.xml
or in the setting.xml then the local repository exists on the developer's
machine is synchronized with the public maven repository at ibiblio.org.
Advantages of having an internal private repository
:
- Reduces conflicts among likelihood versions.
- To build first time it requires less manual intervention.
- Rather than having several separate independent libraries
it provides a
single central reference repository for all the dependent software
libraries.
- It quickly builds the project while using an internal repository as maven
artifacts are retrieved from the intranet server rather than retrieving from
the server on internet.
Internal private repository of an organization:
Use cases for maven repository:
- It creates two sub-repository inside the internal
repository.
- Downloads ibiblio-cache from ibiblio for artifacts
and make it available publically. This synchronizes with external repository
from ibiblio.
- internal-maven-repository: used for internal
artifacts of an organization. It contains unique artifacts for the
organization and is not synchronized with any repository.
- Alternatively, another sub-repository that is not
at ibiblio can be created for artifacts. This does not synchronize with
any external repository.
- Browse the remote repository by using a web
browser.
- Search the artifacts in the repository.
- Download code from version control and make
changes in settings.xml to point to the internal repository and build
without any manual intervention.
- Install new version of the artifacts.
- Import artifacts into the repository in bulk.
- Export artifacts from the repository in bulk.
- Setup the task to backup the repository
automatically.
Criteria for choosing a maven repository
implementation: In ideal condition a maven repository implementation should
be:
- Free and open source
- Provide admin tools
- Easy to setup and use
- Provide backup facility
- Able to create, edit and delete sub repositories.
- Anonymous read only access and also access control
facility.
- Deployable in any standard web server such as Tomcat
or Apache.
- Issue tracker, forums and other independent source
of information.
- Active community developers make the product
enhanced and bugs fixed.
- Bulk import/export facility to move groups of
artifacts into the repository and out of the repository.
- Provide a repository browser: should be a web
browser instead of the desktop application.

|
Current Comments
0 comments so far (post your own) View All Comments Latest 10 Comments: