blob: 4201499d46e62b26b63dece0f5324bea895be0d4 [file] [log] [blame]
<!DOCTYPE html>
<!--
| Generated by Apache Maven Doxia
| Rendered using Apache Maven Fluido Skin 1.3.1
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="Date-Revision-yyyymmdd" content="20170517" />
<meta http-equiv="Content-Language" content="en" />
<title>Archiva :: Modules &#x2013; Terminology</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1.min.css" />
<link rel="stylesheet" href="./css/site.css" />
<link rel="stylesheet" href="./css/print.css" media="print" />
<script type="text/javascript" src="./js/apache-maven-fluido-1.3.1.min.js"></script>
<!-- Google Analytics -->
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-140879-5']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head>
<body class="topBarEnabled">
<div id="topbar" class="navbar navbar-fixed-top ">
<div class="navbar-inner">
<div class="container"><div class="nav-collapse">
<ul class="nav">
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Developers <b class="caret"></b></a>
<ul class="dropdown-menu">
<li> <a href="index.html" title="Overview">Overview</a>
</li>
<li> <a href="terminology.html" title="Terminology">Terminology</a>
</li>
<li> <a href="metadata-content-model.html" title="Metadata Control Model">Metadata Control Model</a>
</li>
<li> <a href="metadata-api.html" title="Metadata API">Metadata API</a>
</li>
<li> <a href="repository-api.html" title="Repository API">Repository API</a>
</li>
</ul>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Modules <b class="caret"></b></a>
<ul class="dropdown-menu">
<li> <a href="archiva-base/index.html" title="Archiva :: Base">Archiva :: Base</a>
</li>
<li> <a href="archiva-scheduler/index.html" title="Archiva :: Scheduler">Archiva :: Scheduler</a>
</li>
<li> <a href="archiva-web/index.html" title="Archiva :: Web">Archiva :: Web</a>
</li>
<li> <a href="archiva-karaf/index.html" title="Archiva :: Karaf">Archiva :: Karaf</a>
</li>
<li> <a href="metadata/index.html" title="Archiva :: Metadata">Archiva :: Metadata</a>
</li>
<li> <a href="plugins/index.html" title="Archiva :: Core Plugins">Archiva :: Core Plugins</a>
</li>
</ul>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Project Documentation <b class="caret"></b></a>
<ul class="dropdown-menu">
<li class="dropdown-submenu">
<a href="project-info.html" title="Project Information">Project Information</a>
<ul class="dropdown-menu">
<li> <a href="integration.html" title="Continuous Integration">Continuous Integration</a>
</li>
<li> <a href="dependencies.html" title="Dependencies">Dependencies</a>
</li>
<li> <a href="dependency-convergence.html" title="Dependency Convergence">Dependency Convergence</a>
</li>
<li> <a href="dependency-info.html" title="Dependency Information">Dependency Information</a>
</li>
<li> <a href="dependency-management.html" title="Dependency Management">Dependency Management</a>
</li>
<li> <a href="distribution-management.html" title="Distribution Management">Distribution Management</a>
</li>
<li> <a href="index.html" title="About">About</a>
</li>
<li> <a href="issue-tracking.html" title="Issue Tracking">Issue Tracking</a>
</li>
<li> <a href="license.html" title="Project License">Project License</a>
</li>
<li> <a href="mail-lists.html" title="Mailing Lists">Mailing Lists</a>
</li>
<li> <a href="modules.html" title="Project Modules">Project Modules</a>
</li>
<li> <a href="plugin-management.html" title="Plugin Management">Plugin Management</a>
</li>
<li> <a href="plugins.html" title="Project Plugins">Project Plugins</a>
</li>
<li> <a href="team-list.html" title="Project Team">Project Team</a>
</li>
<li> <a href="source-repository.html" title="Source Repository">Source Repository</a>
</li>
<li> <a href="project-summary.html" title="Project Summary">Project Summary</a>
</li>
</ul>
</li>
<li class="dropdown-submenu">
<a href="project-reports.html" title="Project Reports">Project Reports</a>
<ul class="dropdown-menu">
<li> <a href="xref/index.html" title="Source Xref">Source Xref</a>
</li>
<li> <a href="xref-test/index.html" title="Test Source Xref">Test Source Xref</a>
</li>
<li> <a href="checkstyle-aggregate.html" title="Checkstyle">Checkstyle</a>
</li>
<li> <a href="apidocs/index.html" title="JavaDocs">JavaDocs</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<form id="search-form" action="http://www.google.com/search" method="get" class="navbar-search pull-right" >
<input value="http://archiva.apache.org/ref/2.2.3" name="sitesearch" type="hidden"/>
<input class="search-query" name="q" id="query" type="text" />
</form>
<script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=search-form"></script>
<ul class="nav pull-right"><li>
<a href="https://twitter.com/archiva" class="twitter-follow-button" data-show-count="false" data-align="right" data-size="large" data-show-screen-name="true" data-lang="en">Follow archiva</a>
<script type="text/javascript">!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</li></ul>
</div>
</div>
</div>
</div>
<div class="container">
<div id="banner">
<div class="pull-left">
<a href="../../index.html" id="bannerLeft">
<img src="../../images/archiva.png" alt="Apache Archiva"/>
</a>
</div>
<div class="pull-right"> <a href="http://www.apache.org/" id="bannerRight">
<img src="https://www.apache.org/images/asf_logo_wide_2016.png" alt="Apache Software Foundation"/>
</a>
</div>
<div class="clear"><hr/></div>
</div>
<div id="breadcrumbs">
<ul class="breadcrumb">
<li class="">
<a href="http://www.apache.org/" class="externalLink" title="Apache">
Apache</a>
<span class="divider">/</span>
</li>
<li class="">
<a href="./" title="Apache Archiva">
Apache Archiva</a>
<span class="divider">/</span>
</li>
<li class="">
<a href="./" title="Archiva :: Modules">
Archiva :: Modules</a>
<span class="divider">/</span>
</li>
<li class="active ">Terminology</li>
<li id="publishDate" class="pull-right">Last Published: 17 May 2017</li>
</ul>
</div>
<div id="bodyColumn" >
<!-- Licensed to the Apache Software Foundation (ASF) under one --><!-- or more contributor license agreements. See the NOTICE file --><!-- distributed with this work for additional information --><!-- regarding copyright ownership. The ASF licenses this file --><!-- to you under the Apache License, Version 2.0 (the --><!-- "License"); you may not use this file except in compliance --><!-- with the License. You may obtain a copy of the License at --><!-- --><!-- http://www.apache.org/licenses/LICENSE-2.0 --><!-- --><!-- Unless required by applicable law or agreed to in writing, --><!-- software distributed under the License is distributed on an --><!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --><!-- KIND, either express or implied. See the License for the --><!-- specific language governing permissions and limitations --><!-- under the License. --><div class="section">
<h2><a name="Terminology"></a>Terminology</h2>
<p>Archiva uses a lot of pieces of data that can have heavily overloaded meaning, so it is important to ensure the terminology used is well defined and consistently used. The following section highlights the terms used in these documents.</p>
<div class="section">
<h3><a name="Repository"></a>Repository</h3>
<p>Repository is the most overloaded term, but when used alone it will refer to the abstract concept of anything that can act as a repository. For example, an on-disk Maven 2 repository, a remote proxied repository, or a repository group that appears as a single repository.</p>
<p>A repository is capable of storing a number of artifacts and their associated metadata. Each artifact is identified by a number of elements: the repository itself, it's namespace, project, project version and artifact ID. Some components are optional, depending on the repository type being discussed - for example each is mapped in a Maven 2 repository, while for a flat file storage only the repository and artifact ID (file path and name) is needed.</p></div>
<div class="section">
<h3><a name="Namespace"></a>Namespace</h3>
<p>A namespace is a hierarchical grouping for projects and artifacts, allowing project and artifact IDs to more easily be made unique within their namespace and to assist in mapping between different repository types.</p>
<p>In a Maven 2 repository, this maps to the group ID of an artifact.</p></div>
<div class="section">
<h3><a name="Project"></a>Project</h3>
<p>A project is a simple grouping of artifacts that share a version in a repository. It does not contain subprojects.</p>
<p>In a Maven 2 repository, this maps to the artifact ID of an artifact. Note that multi-module projects will actually represent multiple projects by default, and additional grouping (other than achieved by the namespace) would need to be done through additional metadata.</p></div>
<div class="section">
<h3><a name="Project_Version"></a>Project Version</h3>
<p>A project version is the version best used to describe the project (the &quot;marketed version&quot;). It must be unique for lookup and comparing project versions to each other, but the artifact(s) it contains may still use a different version. For example:</p>
<ul>
<li>Archiva 1.4-SNAPSHOT may have artifacts <tt>archiva-1.4-20090909.123456-1.jar</tt> and <tt>archiva-1.4-20100201.345612-2.jar</tt>.</li>
<li>Jetty 7.0.0 may have an artifact <tt>jetty-7.0.0.v20091005.jar</tt></li></ul>
<p>In a Maven 2 repository, this maps to the (base) version of a project.</p></div>
<div class="section">
<h3><a name="Artifact_ID"></a>Artifact ID</h3>
<p>The artifact ID uniquely identifies an artifact within a given namespace, project and project version. For example, <tt>archiva-1.4-20100201.345612-2.jar</tt> or <tt>archiva-1.4-20100201.345612-2.pom</tt>.</p>
<p>In a Maven 2 repository, this maps to the filename within the repository, including both the Maven artifact ID, artifact version, classifier and type/extension. Note that the POM and the classic artifact will be stored with separate artifact IDs, but the repository implementation stores the common information for the whole project version (and perhaps all project versions in some instances).</p></div>
<div class="section">
<h3><a name="Metadata_Repository"></a>Metadata Repository</h3>
<p>The metadata repository is the metadata representation of a given repository, containing information about the artifacts it contains, as well as other auxiliary information such as statistics, events, etc.</p></div>
<div class="section">
<h3><a name="Metadata_Content_Repository"></a>Metadata Content Repository</h3>
<p>The metadata content repository is how the information in a metadata repository is persisted. It is effectively the same in appearance to the metadata repository.</p></div>
<div class="section">
<h3><a name="Repository_Resolver"></a>Repository Resolver</h3>
<p>A resolver decides how to translate a request into a given set of metadata or an artifact retrieved from repository storage. The default resolver first queries metadata, falling back to the repository storage if available if necessary due to not being found or being out of date. It is possible that new resolvers can be introduced to also check proxied repositories or to group multiple repositories.</p></div>
<div class="section">
<h3><a name="Repository_Storage"></a>Repository Storage</h3>
<p>A physical storage medium for a type of repository. This may be a file system in Maven 2 format, a URL pointing to a repository in a certain format, a flat set of files, etc. It can be queried and modified to affect the canonical set of artifacts.</p></div></div>
</div>
</div>
<hr/>
<footer>
<div class="container">
<div class="row">
<p >Copyright &copy; 2006&#x2013;2017
<a href="http://www.apache.org/">The Apache Software Foundation</a>.
All rights reserved.
</p>
</div>
<p id="poweredBy" class="pull-right">
<a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
<img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
</a>
</p>
<div id="ohloh" class="pull-right">
<script type="text/javascript" src="http://www.ohloh.net/p/6670/widgets/project_basic_stats.js"></script>
</div>
</div>
</footer>
</body>
</html>