Contains classes and interfaces to represent Artifacts and the local repository structure which contains them. The Repository interface manages the download, analysis and classloader management of Artifacts, each Artifact object mapping to a single Maven2 pom with group ID, artifact ID and version parameters.

RepositoryListeners are used by the spi package to automatically track the existance of implementations of user specified interfaces within the set of Artifact objects in the Repository.