<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia Site Renderer 1.8.1 from target/generated-site/xdoc/mirror-mojo.xml at 2019-10-30
 | Rendered using Apache Maven Fluido Skin 1.7
-->
<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="20191030" />
    <meta http-equiv="Content-Language" content="en" />
    <title>p2 Extras Plugin &#x2013; tycho-p2-extras:mirror</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.7.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.7.min.js"></script>
  </head>
  <body class="topBarDisabled">
    <div class="container-fluid">
      <div id="banner">
        <div class="pull-left"><div id="bannerLeft"><h2>p2 Extras Plugin</h2>
</div>
</div>
        <div class="pull-right"></div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
        <li id="publishDate">Last Published: 2019-10-30<span class="divider">|</span>
</li>
          <li id="projectVersion">Version: 1.5.1-SNAPSHOT</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">Tycho Extras</li>
    <li><a href="../index.html" title="Introduction"><span class="none"></span>Introduction</a></li>
    <li><a href="../tycho-p2-extras-plugin/plugin-info.html" title="P2 Extras Plugin"><span class="none"></span>P2 Extras Plugin</a></li>
    <li><a href="../target-platform-validation-plugin/plugin-info.html" title="Target Platform Validation Plugin"><span class="none"></span>Target Platform Validation Plugin</a></li>
    <li><a href="../tycho-eclipserun-plugin/plugin-info.html" title="Eclipserun Plugin"><span class="none"></span>Eclipserun Plugin</a></li>
    <li><a href="../tycho-document-bundle-plugin/plugin-info.html" title="Document Bundle Plugin"><span class="none"></span>Document Bundle Plugin</a></li>
    <li><a href="../tycho-source-feature-plugin/plugin-info.html" title="Source Feature Generation Plugin"><span class="none"></span>Source Feature Generation Plugin</a></li>
    <li><a href="../tycho-pack200/index.html" title="Pack200 Plugins"><span class="icon-chevron-down"></span>Pack200 Plugins</a>
    <ul class="nav nav-list">
    <li><a href="../tycho-pack200/tycho-pack200a-plugin/plugin-info.html" title="Normalization Plugin"><span class="none"></span>Normalization Plugin</a></li>
    <li><a href="../tycho-pack200/tycho-pack200b-plugin/plugin-info.html" title="Pack Plugin"><span class="none"></span>Pack Plugin</a></li>
    </ul>
</li>
</ul>
          <hr />
          <div id="poweredBy">
            <div class="clear"></div>
            <div class="clear"></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" >

  
    <div class="section">
<h2><a name="tycho-p2-extras:mirror"></a>tycho-p2-extras:mirror</h2>
      
<p><b>Full name</b>:</p>
      
<p>org.eclipse.tycho.extras:tycho-p2-extras-plugin:1.5.1-SNAPSHOT:mirror</p>
      
<p><b>Description</b>:</p>
      
<div>Maven plugin front-end for
org.eclipse.equinox.p2.internal.repository.tools.MirrorApplication.
Intended as a replacement for the <a class="externalLink" href="http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Fp2_repositorytasks.htm">p2.mirror
ant task</a>.</div>
      
<p><b>Attributes</b>:</p>
      
<ul>
        
<li>Requires a Maven project to be executed.</li>
      </ul>
      
<div class="section">
<h3><a name="Optional_Parameters"></a>Optional Parameters</h3>
        
<table class="table table-striped" border="0">
          
<tr class="a">
            
<th>Name</th>
            
<th>Type</th>
            
<th>Since</th>
            
<th>Description</th>
          </tr>
          
<tr class="b">
            
<td><tt><a href="#append">&lt;append&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>-</tt></td>
            
<td>Whether to append to an existing destination repository. Note that
appending an IU which already exists in the destination repository
will cause the mirror operation to fail.<br /><b>Default value is</b>: <tt>true</tt>.<br /></td>
          </tr>
          
<tr class="a">
            
<td><tt><a href="#compress">&lt;compress&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>-</tt></td>
            
<td>Whether to compress the destination repository metadata files
(artifacts.xml, content.xml).<br /><b>Default value is</b>: <tt>true</tt>.<br /></td>
          </tr>
          
<tr class="b">
            
<td><tt><a href="#currentModuleAsSource">&lt;currentModuleAsSource&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>1.1.0</tt></td>
            
<td>
<p>Whether the current build p2 output should be added as source.
Ignored for non-Tycho packaging types. Ignored if
<tt>targetPlatformAsSource</tt> == false;</p><br /><b>Default value is</b>: <tt>true</tt>.<br /></td>
          </tr>
          
<tr class="a">
            
<td><tt><a href="#destination">&lt;destination&gt;</a></tt></td>
            
<td><tt>File</tt></td>
            
<td><tt>-</tt></td>
            
<td>The destination directory to mirror to.<br /><b>Default value is</b>: <tt>${project.build.directory}/repository</tt>.<br /></td>
          </tr>
          
<tr class="b">
            
<td><tt><a href="#filter">&lt;filter&gt;</a></tt></td>
            
<td><tt>Map</tt></td>
            
<td><tt>-</tt></td>
            
<td>Filter properties. In particular, a platform filter can be
specified by using keys <tt>osgi.os, osgi.ws, osgi.arch</tt>.<br /></td>
          </tr>
          
<tr class="a">
            
<td><tt><a href="#followOnlyFilteredRequirements">&lt;followOnlyFilteredRequirements&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>-</tt></td>
            
<td>Follow only requirements which match the filter specified.<br /><b>Default value is</b>: <tt>false</tt>.<br /></td>
          </tr>
          
<tr class="b">
            
<td><tt><a href="#followStrictOnly">&lt;followStrictOnly&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>-</tt></td>
            
<td>Set to true if only strict dependencies should be followed. A
strict dependency is defined by a version range only including
exactly one version (e.g. [1.0.0.v2009, 1.0.0.v2009]). In
particular, plugins/features included in a feature are normally
required via a strict dependency from the feature to the included
plugin/feature.<br /><b>Default value is</b>: <tt>false</tt>.<br /></td>
          </tr>
          
<tr class="a">
            
<td><tt><a href="#ignoreErrors">&lt;ignoreErrors&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>1.1.0</tt></td>
            
<td>
<p>If set to true, mirroring continues to run in the event of an
error during the mirroring process and will just log an info
message.</p><br /><b>Default value is</b>: <tt>false</tt>.<br /></td>
          </tr>
          
<tr class="b">
            
<td><tt><a href="#includeFeatures">&lt;includeFeatures&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>-</tt></td>
            
<td>Whether or not to include features.<br /><b>Default value is</b>: <tt>true</tt>.<br /></td>
          </tr>
          
<tr class="a">
            
<td><tt><a href="#includeNonGreedy">&lt;includeNonGreedy&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>-</tt></td>
            
<td>Whether or not to follow non-greedy requirements.<br /><b>Default value is</b>: <tt>true</tt>.<br /></td>
          </tr>
          
<tr class="b">
            
<td><tt><a href="#includeOptional">&lt;includeOptional&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>-</tt></td>
            
<td>Whether or not to follow optional requirements.<br /><b>Default value is</b>: <tt>true</tt>.<br /></td>
          </tr>
          
<tr class="a">
            
<td><tt><a href="#includePacked">&lt;includePacked&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>-</tt></td>
            
<td>Whether or not to include pack200 artifacts.<br /><b>Default value is</b>: <tt>true</tt>.<br /></td>
          </tr>
          
<tr class="b">
            
<td><tt><a href="#ius">&lt;ius&gt;</a></tt></td>
            
<td><tt>List</tt></td>
            
<td><tt>-</tt></td>
            
<td>(Optional) Which IUs to mirror. If omitted, all IUs available in
the source repositories will be mirrored. An IU must specify an id
and may specify a version. If version is omitted, the latest
available version will be queried. By default, IUs required by the
specified IUs will also be mirrored. See also
<tt>followStrictOnly</tt>,
<tt>followOnlyFilteredRequirements</tt> ,
<tt>includeOptional</tt>, <tt>includeNonGreedy</tt>,
<tt>includeFeatures</tt>.<br /></td>
          </tr>
          
<tr class="a">
            
<td><tt><a href="#keepNonXzIndexFiles">&lt;keepNonXzIndexFiles&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>0.25.0</tt></td>
            
<td>
<p>If <tt>xzCompress</tt> is <tt>true</tt>, whether jar or
xml index files should be kept in addition to XZ-compressed index
files. This fallback provides backwards compatibility for pre-Mars
p2 clients which cannot read XZ-compressed index files.</p><br /><b>Default value is</b>: <tt>true</tt>.<br /></td>
          </tr>
          
<tr class="b">
            
<td><tt><a href="#latestVersionOnly">&lt;latestVersionOnly&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>-</tt></td>
            
<td>Set to <tt>true</tt> to filter the resulting set of IUs to only
include the latest version of each Installable Unit only. By
default, all versions satisfying dependencies are included.<br /><b>Default value is</b>: <tt>false</tt>.<br /></td>
          </tr>
          
<tr class="a">
            
<td><tt><a href="#mirrorMetadataOnly">&lt;mirrorMetadataOnly&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>-</tt></td>
            
<td>Whether to mirror metadata only (no artifacts).<br /><b>Default value is</b>: <tt>false</tt>.<br /></td>
          </tr>
          
<tr class="b">
            
<td><tt><a href="#name">&lt;name&gt;</a></tt></td>
            
<td><tt>String</tt></td>
            
<td><tt>-</tt></td>
            
<td>The target repository name.<br /></td>
          </tr>
          
<tr class="a">
            
<td><tt><a href="#source">&lt;source&gt;</a></tt></td>
            
<td><tt>List</tt></td>
            
<td><tt>-</tt></td>
            
<td>Source repositori(es) to mirror from.<br /></td>
          </tr>
          
<tr class="b">
            
<td><tt><a href="#targetPlatformAsSource">&lt;targetPlatformAsSource&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>1.1.0</tt></td>
            
<td>
<p>Whether to add the target-platform content as a source. Ignored
for non-Tycho packaging types.</p><br /><b>Default value is</b>: <tt>false</tt>.<br /></td>
          </tr>
          
<tr class="a">
            
<td><tt><a href="#xzCompress">&lt;xzCompress&gt;</a></tt></td>
            
<td><tt>boolean</tt></td>
            
<td><tt>0.25.0</tt></td>
            
<td>
<p>Add XZ-compressed repository index files. XZ offers better
compression ratios esp. for highly redundant file content.</p><br /><b>Default value is</b>: <tt>true</tt>.<br /></td>
          </tr>
        </table>
      </div>
      
<div class="section">
<h3><a name="Parameter_Details"></a>Parameter Details</h3>
        
<div class="section">
<h4><a name="a.3Cappend.3E"></a><b><a name="append">&lt;append&gt;</a></b></h4>
        
<div>Whether to append to an existing destination repository. Note that
appending an IU which already exists in the destination repository
will cause the mirror operation to fail.</div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>true</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3Ccompress.3E"></a><b><a name="compress">&lt;compress&gt;</a></b></h4>
        
<div>Whether to compress the destination repository metadata files
(artifacts.xml, content.xml).</div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>true</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3CcurrentModuleAsSource.3E"></a><b><a name="currentModuleAsSource">&lt;currentModuleAsSource&gt;</a></b></h4>
        
<div>
<p>Whether the current build p2 output should be added as source.
Ignored for non-Tycho packaging types. Ignored if
<tt>targetPlatformAsSource</tt> == false;</p></div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Since</b>: <tt>1.1.0</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>true</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3Cdestination.3E"></a><b><a name="destination">&lt;destination&gt;</a></b></h4>
        
<div>The destination directory to mirror to.</div>
        
<ul>
          
<li><b>Type</b>: <tt>java.io.File</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>${project.build.directory}/repository</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3Cfilter.3E"></a><b><a name="filter">&lt;filter&gt;</a></b></h4>
        
<div>Filter properties. In particular, a platform filter can be
specified by using keys <tt>osgi.os, osgi.ws, osgi.arch</tt>.</div>
        
<ul>
          
<li><b>Type</b>: <tt>java.util.Map</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3CfollowOnlyFilteredRequirements.3E"></a><b><a name="followOnlyFilteredRequirements">&lt;followOnlyFilteredRequirements&gt;</a></b></h4>
        
<div>Follow only requirements which match the filter specified.</div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>false</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3CfollowStrictOnly.3E"></a><b><a name="followStrictOnly">&lt;followStrictOnly&gt;</a></b></h4>
        
<div>Set to true if only strict dependencies should be followed. A
strict dependency is defined by a version range only including
exactly one version (e.g. [1.0.0.v2009, 1.0.0.v2009]). In
particular, plugins/features included in a feature are normally
required via a strict dependency from the feature to the included
plugin/feature.</div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>false</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3CignoreErrors.3E"></a><b><a name="ignoreErrors">&lt;ignoreErrors&gt;</a></b></h4>
        
<div>
<p>If set to true, mirroring continues to run in the event of an
error during the mirroring process and will just log an info
message.</p></div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Since</b>: <tt>1.1.0</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>false</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3CincludeFeatures.3E"></a><b><a name="includeFeatures">&lt;includeFeatures&gt;</a></b></h4>
        
<div>Whether or not to include features.</div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>true</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3CincludeNonGreedy.3E"></a><b><a name="includeNonGreedy">&lt;includeNonGreedy&gt;</a></b></h4>
        
<div>Whether or not to follow non-greedy requirements.</div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>true</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3CincludeOptional.3E"></a><b><a name="includeOptional">&lt;includeOptional&gt;</a></b></h4>
        
<div>Whether or not to follow optional requirements.</div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>true</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3CincludePacked.3E"></a><b><a name="includePacked">&lt;includePacked&gt;</a></b></h4>
        
<div>Whether or not to include pack200 artifacts.</div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>true</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3Cius.3E"></a><b><a name="ius">&lt;ius&gt;</a></b></h4>
        
<div>(Optional) Which IUs to mirror. If omitted, all IUs available in
the source repositories will be mirrored. An IU must specify an id
and may specify a version. If version is omitted, the latest
available version will be queried. By default, IUs required by the
specified IUs will also be mirrored. See also
<tt>followStrictOnly</tt>,
<tt>followOnlyFilteredRequirements</tt> ,
<tt>includeOptional</tt>, <tt>includeNonGreedy</tt>,
<tt>includeFeatures</tt>.</div>
        
<ul>
          
<li><b>Type</b>: <tt>java.util.List</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3CkeepNonXzIndexFiles.3E"></a><b><a name="keepNonXzIndexFiles">&lt;keepNonXzIndexFiles&gt;</a></b></h4>
        
<div>
<p>If <tt>xzCompress</tt> is <tt>true</tt>, whether jar or
xml index files should be kept in addition to XZ-compressed index
files. This fallback provides backwards compatibility for pre-Mars
p2 clients which cannot read XZ-compressed index files.</p></div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Since</b>: <tt>0.25.0</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>true</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3ClatestVersionOnly.3E"></a><b><a name="latestVersionOnly">&lt;latestVersionOnly&gt;</a></b></h4>
        
<div>Set to <tt>true</tt> to filter the resulting set of IUs to only
include the latest version of each Installable Unit only. By
default, all versions satisfying dependencies are included.</div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>false</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3CmirrorMetadataOnly.3E"></a><b><a name="mirrorMetadataOnly">&lt;mirrorMetadataOnly&gt;</a></b></h4>
        
<div>Whether to mirror metadata only (no artifacts).</div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>false</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3Cname.3E"></a><b><a name="name">&lt;name&gt;</a></b></h4>
        
<div>The target repository name.</div>
        
<ul>
          
<li><b>Type</b>: <tt>java.lang.String</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3Csource.3E"></a><b><a name="source">&lt;source&gt;</a></b></h4>
        
<div>Source repositori(es) to mirror from.</div>
        
<ul>
          
<li><b>Type</b>: <tt>java.util.List</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3CtargetPlatformAsSource.3E"></a><b><a name="targetPlatformAsSource">&lt;targetPlatformAsSource&gt;</a></b></h4>
        
<div>
<p>Whether to add the target-platform content as a source. Ignored
for non-Tycho packaging types.</p></div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Since</b>: <tt>1.1.0</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>false</tt></li>
        </ul><hr /></div>
<div class="section">
<h4><a name="a.3CxzCompress.3E"></a><b><a name="xzCompress">&lt;xzCompress&gt;</a></b></h4>
        
<div>
<p>Add XZ-compressed repository index files. XZ offers better
compression ratios esp. for highly redundant file content.</p></div>
        
<ul>
          
<li><b>Type</b>: <tt>boolean</tt></li>
          
<li><b>Since</b>: <tt>0.25.0</tt></li>
          
<li><b>Required</b>: <tt>No</tt></li>
          
<li><b>Default</b>: <tt>true</tt></li>
        </ul>
      </div></div>
    </div>
  

        </div>
      </div>
    </div>
    <hr/>
    <footer>
      <div class="container-fluid">
        <div class="row-fluid">
            <p>Copyright &copy;2010&#x2013;2019
<a href="http://www.eclipse.org/">Eclipse Foundation</a>.
All rights reserved.</p>
        </div>
      </div>
    </footer>
  </body>
</html>
