blob: 7f5e90c7276531efc4ee29b186a4ab3fb95a5cef [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="20160530" />
<meta http-equiv="Content-Language" content="en" />
<title>Archiva Documentation &#x2013; Using as a Repository</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="topBarDisabled">
<div class="container-fluid">
<div id="banner">
<div class="pull-left">
<a href="../../../" 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="../../../index.html" title="Apache Archiva">
Apache Archiva</a>
<span class="divider">/</span>
</li>
<li class="active ">Using as a Repository</li>
<li id="publishDate" class="pull-right"><span class="divider">|</span> Last Published: 2016-05-30</li>
<li id="projectVersion" class="pull-right">
Version: 2.2.1
</li>
</ul>
</div>
<div class="row-fluid">
<div id="leftColumn" class="span2">
<div class="well sidebar-nav">
<ul class="nav nav-list">
<li class="nav-header">Introduction</li>
<li>
<a href="../quick-start.html" title="Quick Start">
<i class="none"></i>
Quick Start</a>
</li>
<li>
<a href="../tour/index.html" title="Feature Tour">
<i class="none"></i>
Feature Tour</a>
</li>
<li>
<a href="../release-notes.html" title="Release Notes">
<i class="none"></i>
Release Notes</a>
</li>
<li>
<a href="../../../download.html" title="Downloads">
<i class="none"></i>
Downloads</a>
</li>
<li class="nav-header">Users Guide</li>
<li>
<a href="../userguide/browsing.html" title="Browsing">
<i class="none"></i>
Browsing</a>
</li>
<li>
<a href="../userguide/searching.html" title="Searching">
<i class="none"></i>
Searching</a>
</li>
<li>
<a href="../userguide/delete-artifact.html" title="Deleting an Artifact">
<i class="none"></i>
Deleting an Artifact</a>
</li>
<li class="active">
<a href="#"><i class="none"></i>Using as a repository</a>
</li>
<li>
<a href="../userguide/deploy.html" title="Deploying to repository">
<i class="none"></i>
Deploying to repository</a>
</li>
<li>
<a href="../userguide/virtual-repositories.html" title="Configuring Virtual Repositories">
<i class="none"></i>
Configuring Virtual Repositories</a>
</li>
<li>
<a href="../userguide/rss.html" title="Rss Feeds in Archiva">
<i class="none"></i>
Rss Feeds in Archiva</a>
</li>
<li>
<a href="../userguide/querying-artifacts.html" title="Querying Artifacts">
<i class="none"></i>
Querying Artifacts</a>
</li>
<li class="nav-header">Administrators Guide</li>
<li>
<a href="../adminguide/installing.html" title="Installing Archiva">
<i class="icon-chevron-right"></i>
Installing Archiva</a>
</li>
<li>
<a href="../adminguide/databases.html" title="Databases">
<i class="none"></i>
Databases</a>
</li>
<li>
<a href="../adminguide/repositories-content-storage.html" title="Repositories Content Storage">
<i class="none"></i>
Repositories Content Storage</a>
</li>
<li>
<a href="../adminguide/security.html" title="Security">
<i class="icon-chevron-right"></i>
Security</a>
</li>
<li>
<a href="../adminguide/configuration.html" title="Archiva Configuration">
<i class="icon-chevron-right"></i>
Archiva Configuration</a>
</li>
<li>
<a href="../adminguide/webservices/rest.html" title="REST Apis">
<i class="none"></i>
REST Apis</a>
</li>
<li>
<a href="../adminguide/configuration-files.html" title="Configuration Files">
<i class="none"></i>
Configuration Files</a>
</li>
<li>
<a href="../adminguide/system-status.html" title="System Status">
<i class="none"></i>
System Status</a>
</li>
<li>
<a href="../adminguide/logging.html" title="Log Files">
<i class="icon-chevron-right"></i>
Log Files</a>
</li>
<li>
<a href="../adminguide/reports.html" title="Reports">
<i class="none"></i>
Reports</a>
</li>
<li class="nav-header">Customising Archiva</li>
<li>
<a href="../customising/writing-consumer.html" title="Writing a Consumer Plugin">
<i class="none"></i>
Writing a Consumer Plugin</a>
</li>
<li class="nav-header">More Information</li>
<li>
<a href="http://cwiki.apache.org/confluence/display/ARCHIVA/Index" class="externalLink" title="Archiva Wiki">
<i class="none"></i>
Archiva Wiki</a>
</li>
<li class="nav-header">ASF</li>
<li>
<a href="http://www.apache.org/foundation/how-it-works.html" class="externalLink" title="How Apache Works">
<i class="none"></i>
How Apache Works</a>
</li>
<li>
<a href="http://www.apache.org/foundation/" class="externalLink" title="Foundation">
<i class="none"></i>
Foundation</a>
</li>
<li>
<a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsoring Apache">
<i class="none"></i>
Sponsoring Apache</a>
</li>
<li>
<a href="http://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks">
<i class="none"></i>
Thanks</a>
</li>
<li class="nav-header">Project Documentation</li>
<li>
<a href="../project-info.html" title="Project Information">
<i class="icon-chevron-right"></i>
Project Information</a>
</li>
</ul>
<form id="search-form" action="http://www.google.com/search" method="get" >
<input value="http://archiva.apache.org/docs/2.2.1/" 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>
<hr />
<div id="poweredBy">
<div class="clear"></div>
<div class="clear"></div>
<div id="twitter">
<a href="https://twitter.com/archiva" class="twitter-follow-button" data-show-count="false" data-align="left" data-size="medium" 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>
</div>
<div class="clear"></div>
<div class="clear"></div>
<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>
</div>
</div>
</div>
<div id="bodyColumn" class="span10" >
<!-- 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="Configuring_Maven_2_to_use_an_Archiva_repository"></a>Configuring Maven 2 to use an Archiva repository</h2>
<p>To get your local Maven 2 installation to use an Archiva proxy you need to add the repositories you require to your 'settings.xml'. This file is usually found in ${user.dir}/.m2/settings.xml (see the <a class="externalLink" href="http://maven.apache.org/settings.html">Settings Reference</a>). </p>
<p>How you configure the settings depends on how you would like to utilise the repository. You can add the Archiva repository as an additional repository to others already declared by the project, or lock down the environment to only use the Archiva repositories (possibly proxying content from a remote repository).</p>
<div class="section">
<h3><a name="Locking_down_to_only_use_Archiva"></a>Locking down to only use Archiva</h3>
<p>If you would like Archiva to serve as the only repository used by your Maven installation, you can use the Maven mirror settings to force this behaviour.</p>
<p>First, you need to select the default repository to use when none is configured by adding the following to the <tt>settings.xml</tt> file:</p>
<div class="source">
<pre>&lt;settings&gt;
&lt;!-- omitted xml --&gt;
&lt;mirrors&gt;
&lt;mirror&gt;
&lt;id&gt;archiva.default&lt;/id&gt;
&lt;url&gt;http://repo.mycompany.com:8080/repository/internal/&lt;/url&gt;
&lt;mirrorOf&gt;external:*&lt;/mirrorOf&gt;
&lt;/mirror&gt;
&lt;/mirrors&gt;
&lt;!-- omitted xml --&gt;
&lt;/settings&gt;</pre></div>
<p><b>Note:</b> <i>There are other controls you can use on what is mirrored. See Maven's <a class="externalLink" href="http://maven.apache.org/guides/mini/guide-mirror-settings.html"> Guide to Mirror Settings</a> for more information.</i></p>
<p>With this in place, all repository requests will be sent to the internal repository (which by default is configured to proxy the central repository).</p>
<p>If you have separate Archiva repositories that you wish to use, you can add an extra mirror declaration as needed:</p>
<div class="source">
<pre> &lt;!-- omitted xml --&gt;
&lt;mirror&gt;
&lt;id&gt;archiva.apache.snapshots&lt;/id&gt;
&lt;url&gt;http://repo.mycompany.com:8080/repository/snapshots/&lt;/url&gt;
&lt;mirrorOf&gt;apache.snapshots&lt;/mirrorOf&gt;
&lt;/mirror&gt;
&lt;!-- omitted xml --&gt;</pre></div>
<p><b>WARNING:</b> Maven, as of version 2.0.8, does not properly report the correct URL in errors when a mirror is used - so although the Archiva instance is being consulted any error messages will still reflect the original URL described in the POM.</p></div>
<div class="section">
<h3><a name="Using_Archiva_as_an_additional_repository"></a>Using Archiva as an additional repository</h3>
<p>You will need to add one entry for each repository that is setup in Archiva. If your repository contains plugins; remember to also include a &lt;pluginRepository&gt; setting.</p>
<ol style="list-style-type: decimal">
<li>Create a new profile to setup your repositories
<div class="source">
<pre>&lt;settings&gt;
&lt;!-- omitted xml --&gt;
&lt;profiles&gt;
&lt;profile&gt;
&lt;id&gt;Repository Proxy&lt;/id&gt;
&lt;activation&gt;
&lt;activeByDefault&gt;true&lt;/activeByDefault&gt;
&lt;/activation&gt;
&lt;!-- ******************************************************* --&gt;
&lt;!-- repositories for jar artifacts --&gt;
&lt;!-- ******************************************************* --&gt;
&lt;repositories&gt;
&lt;repository&gt;
&lt;!-- omitted xml --&gt;
&lt;/repository&gt;
&lt;!-- omitted xml --&gt;
&lt;/repositories&gt;
&lt;!-- ******************************************************* --&gt;
&lt;!-- repositories for maven plugins --&gt;
&lt;!-- ******************************************************* --&gt;
&lt;pluginRepositories&gt;
&lt;pluginRepository&gt;
&lt;!-- omitted xml --&gt;
&lt;/pluginRepository&gt;
&lt;!-- omitted xml --&gt;
&lt;/pluginRepositories&gt;
&lt;/profile&gt;
&lt;!-- omitted xml --&gt;
&lt;/profiles&gt;
&lt;!-- omitted xml --&gt;
&lt;/settings&gt;</pre></div></li>
<li>Add your repository configuration to the profile
<p>You can copy the repository configuration from the POM Snippet on the Archiva Administration Page for a normal repository. It should look much like:</p>
<div class="source">
<pre> &lt;repository&gt;
&lt;id&gt;repository-1&lt;/id&gt;
&lt;url&gt;http://repo.mycompany.com:8080/repository/internal/&lt;/url&gt;
&lt;releases&gt;
&lt;enabled&gt;true&lt;/enabled&gt;
&lt;/releases&gt;
&lt;snapshots&gt;
&lt;enabled&gt;false&lt;/enabled&gt;
&lt;/snapshots&gt;
&lt;/repository&gt;</pre></div></li>
<li>Add the necessary security configuration
<p>This is only necessary if the guest account does not have read access to the given repository.</p>
<div class="source">
<pre>&lt;settings&gt;
&lt;!-- omitted xml --&gt;
&lt;servers&gt;
&lt;server&gt;
&lt;id&gt;repository-1&lt;/id&gt;
&lt;username&gt;{archiva-user}&lt;/username&gt;
&lt;password&gt;{archiva-pwd}&lt;/password&gt;
&lt;/server&gt;
&lt;!-- omitted xml --&gt;
&lt;/servers&gt;
&lt;!-- omitted xml --&gt;
&lt;/settings&gt;</pre></div></li></ol></div></div>
</div>
</div>
</div>
<hr/>
<footer>
<div class="container-fluid">
<div class="row-fluid">
<p >Copyright &copy; 2006&#x2013;2016
<a href="http://www.apache.org/">The Apache Software Foundation</a>.
All rights reserved.
</p>
</div>
<div class="row span12">Apache Archiva :: Documentation, Archiva :: Documentation, Apache, the Apache feather logo, and the Apache Archiva :: Documentation project logos are trademarks of The Apache Software Foundation.</div>
<div class="row span12">
<a href="http://archiva.apache.org/docs/2.2.1/privacy-policy.html">Privacy Policy</a>
</div>
<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>