<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia Site Renderer 1.11.1 at 2022-07-14 
 | Rendered using Apache Maven Fluido Skin 1.6
-->
<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="20220714" />
    <meta http-equiv="Content-Language" content="en" />
    <title>axis2-repo-maven-plugin &#x2013; axis2:create-repository</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.6.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.6.min.js"></script>
      </head>
    <body class="topBarDisabled">
      <div class="container-fluid">
      <div id="banner">
        <div class="pull-left"><a href="http://www.apache.org/" id="bannerLeft"><img src="http://www.apache.org/images/asf_logo_wide.png"  alt="Apache Axis2"/></a></div>
        <div class="pull-right"><a href="../../../" id="bannerRight"><img src="../../../images/axis.jpg" /></a></div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
        <li id="publishDate">Last Published: 2022-07-14<span class="divider">|</span>
</li>
          <li id="projectVersion">Version: 1.8.2<span class="divider">|</span></li>
        <li class=""><a href="http://www.apache.org" class="externalLink" title="Apache">Apache</a><span class="divider">/</span></li>
      <li class=""><a href="../../../../../../../../../../../../scm:git:https:/gitbox.apache.org/repos/asf/axis-site.git/index.html" title="Axis2/Java">Axis2/Java</a><span class="divider">/</span></li>
      <li class=""><a href="index.html" title="axis2-repo-maven-plugin">axis2-repo-maven-plugin</a><span class="divider">/</span></li>
    <li class="active ">axis2:create-repository</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">Overview</li>
    <li><a href="index.html" title="About"><span class="none"></span>About</a>  </li>
    <li><a href="plugin-info.html" title="Plugin Documentation"><span class="icon-chevron-down"></span>Plugin Documentation</a>
      <ul class="nav nav-list">
    <li class="active"><a href="#"><span class="none"></span>create-repository</a>
  </li>
    <li><a href="create-test-repository-mojo.html" title="create-test-repository"><span class="none"></span>create-test-repository</a>  </li>
      </ul>
  </li>
          <li class="nav-header">Apache</li>
    <li><a href="http://www.apache.org/licenses/LICENSE-2.0.html" class="externalLink" title="License"><span class="none"></span>License</a>  </li>
    <li><a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsorship"><span class="none"></span>Sponsorship</a>  </li>
    <li><a href="http://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks"><span class="none"></span>Thanks</a>  </li>
    <li><a href="http://www.apache.org/security/" class="externalLink" title="Security"><span class="none"></span>Security</a>  </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" >

  
    <section>
<h2><a name="axis2:create-repository"></a>axis2:create-repository</h2>
      
<p><b>Full name</b>:</p>
      
<p>org.apache.axis2:axis2-repo-maven-plugin:1.8.2:create-repository</p>
      
<p><b>Description</b>:</p>
      
<div>Creates an Axis2 repository from the project's runtime
dependencies. This goal is typically used to build an Axis2
repository that will be packaged into some kind of distribution.</div>
      
<p><b>Attributes</b>:</p>
      
<ul>
        
<li>Requires a Maven project to be executed.</li>
        
<li>Requires dependency resolution of artifacts in scope: <code>runtime</code>.</li>
        
<li>The goal is thread-safe and supports parallel builds.</li>
        
<li>Binds by default to the <a class="externalLink" href="http://maven.apache.org/ref/current/maven-core/lifecycles.html">lifecycle phase</a>: <code>package</code>.</li>
      </ul>
      <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 align="left"><code><a href="#axis2xml">&lt;axis2xml&gt;</a></code></td>
            
<td><code>File</code></td>
            
<td><code>-</code></td>
            
<td>The <code>axis2.xml</code> file to be copied into the repository.<br /></td>
          </tr>
          
<tr class="a">
            
<td align="left"><code><a href="#configurationDirectory">&lt;configurationDirectory&gt;</a></code></td>
            
<td><code>String</code></td>
            
<td><code>-</code></td>
            
<td>The directory (relative to the repository root) where the
<code>axis2.xml</code> file will be written. If this parameter is not
set, then the file will be written into the repository root.<br /></td>
          </tr>
          
<tr class="b">
            
<td align="left"><code><a href="#generateFileLists">&lt;generateFileLists&gt;</a></code></td>
            
<td><code>boolean</code></td>
            
<td><code>-</code></td>
            
<td>Specifies whether the plugin should generate <code>services.list</code>
and <code>modules.list</code> files.<br /><b>Default value is</b>: <code>false</code>.<br /></td>
          </tr>
          
<tr class="a">
            
<td align="left"><code><a href="#generatedAxis2xml">&lt;generatedAxis2xml&gt;</a></code></td>
            
<td><code>GeneratedAxis2Xml</code></td>
            
<td><code>-</code></td>
            
<td>If present, an <code>axis2.xml</code> file will be generated
(Experimental).<br /></td>
          </tr>
          
<tr class="b">
            
<td align="left"><code><a href="#includeModules">&lt;includeModules&gt;</a></code></td>
            
<td><code>boolean</code></td>
            
<td><code>-</code></td>
            
<td>Specifies whether modules should be deployed to the repository.<br /><b>Default value is</b>: <code>true</code>.<br /></td>
          </tr>
          
<tr class="a">
            
<td align="left"><code><a href="#includeServices">&lt;includeServices&gt;</a></code></td>
            
<td><code>boolean</code></td>
            
<td><code>-</code></td>
            
<td>Specifies whether services should be deployed to the repository.<br /><b>Default value is</b>: <code>true</code>.<br /></td>
          </tr>
          
<tr class="b">
            
<td align="left"><code><a href="#inputDirectory">&lt;inputDirectory&gt;</a></code></td>
            
<td><code>File</code></td>
            
<td><code>-</code></td>
            
<td>Input directory with additional files to be copied to the
repository.<br /><b>Default value is</b>: <code>src/main/repository</code>.<br /></td>
          </tr>
          
<tr class="a">
            
<td align="left"><code><a href="#jaxwsServices">&lt;jaxwsServices&gt;</a></code></td>
            
<td><code>JAXWSService[]</code></td>
            
<td><code>-</code></td>
            
<td>A list of JAX-WS service JARs to be generated (by packaging class
files from the current project).<br /></td>
          </tr>
          
<tr class="b">
            
<td align="left"><code><a href="#jaxwsServicesDirectory">&lt;jaxwsServicesDirectory&gt;</a></code></td>
            
<td><code>String</code></td>
            
<td><code>-</code></td>
            
<td>The directory (relative to the repository root) where JAX-WS
service JARs will be deployed.<br /><b>Default value is</b>: <code>servicejars</code>.<br /></td>
          </tr>
          
<tr class="a">
            
<td align="left"><code><a href="#modules">&lt;modules&gt;</a></code></td>
            
<td><code>String</code></td>
            
<td><code>-</code></td>
            
<td>Comma separated list of modules (by artifactId) to include in the
repository.<br /></td>
          </tr>
          
<tr class="b">
            
<td align="left"><code><a href="#modulesDirectory">&lt;modulesDirectory&gt;</a></code></td>
            
<td><code>String</code></td>
            
<td><code>-</code></td>
            
<td>The directory (relative to the repository root) where MAR files are
copied. This should be set to the same value as the
<code>ModulesDirectory</code> property in <code>axis2.xml</code>.<br /><b>Default value is</b>: <code>modules</code>.<br /></td>
          </tr>
          
<tr class="a">
            
<td align="left"><code><a href="#outputDirectory">&lt;outputDirectory&gt;</a></code></td>
            
<td><code>File</code></td>
            
<td><code>-</code></td>
            
<td>The output directory where the repository will be created.<br /><b>Default value is</b>: <code>${project.build.directory}/repository</code>.<br /></td>
          </tr>
          
<tr class="b">
            
<td align="left"><code><a href="#serviceDescriptions">&lt;serviceDescriptions&gt;</a></code></td>
            
<td><code>ServiceDescription[]</code></td>
            
<td><code>-</code></td>
            
<td>A list of service descriptions that should be processed to build
exploded AARs.<br /></td>
          </tr>
          
<tr class="a">
            
<td align="left"><code><a href="#services">&lt;services&gt;</a></code></td>
            
<td><code>String</code></td>
            
<td><code>-</code></td>
            
<td>Comma separated list of services (by artifactId) to include in the
repository.<br /></td>
          </tr>
          
<tr class="b">
            
<td align="left"><code><a href="#servicesDirectory">&lt;servicesDirectory&gt;</a></code></td>
            
<td><code>String</code></td>
            
<td><code>-</code></td>
            
<td>The directory (relative to the repository root) where AAR files are
copied. This should be set to the same value as the
<code>ServicesDirectory</code> property in <code>axis2.xml</code>.<br /><b>Default value is</b>: <code>services</code>.<br /></td>
          </tr>
          
<tr class="a">
            
<td align="left"><code><a href="#stripModuleVersion">&lt;stripModuleVersion&gt;</a></code></td>
            
<td><code>boolean</code></td>
            
<td><code>-</code></td>
            
<td>Specifies whether the plugin strips version numbers from MAR files.<br /><b>Default value is</b>: <code>false</code>.<br /></td>
          </tr>
          
<tr class="b">
            
<td align="left"><code><a href="#stripServiceVersion">&lt;stripServiceVersion&gt;</a></code></td>
            
<td><code>boolean</code></td>
            
<td><code>-</code></td>
            
<td>Specifies whether the plugin strips version numbers from AAR files.<br /><b>Default value is</b>: <code>true</code>.<br /></td>
          </tr>
          
<tr class="a">
            
<td align="left"><code><a href="#useDependencies">&lt;useDependencies&gt;</a></code></td>
            
<td><code>boolean</code></td>
            
<td><code>-</code></td>
            
<td>Specifies whether the plugin should scan the project dependencies
for AAR and MAR artifacts.<br /><b>Default value is</b>: <code>true</code>.<br /></td>
          </tr>
          
<tr class="b">
            
<td align="left"><code><a href="#useModules">&lt;useModules&gt;</a></code></td>
            
<td><code>boolean</code></td>
            
<td><code>-</code></td>
            
<td>Specifies whether the plugin should scan Maven modules for AAR and
MAR artifacts. This parameter only has an effect for multimodule
projects.<br /><b>Default value is</b>: <code>true</code>.<br /></td>
          </tr>
        </table>
      </section>
      <section>
<h3><a name="Parameter_Details"></a>Parameter Details</h3>
        <section>
<h4><a name="a.3Caxis2xml.3E"></a><b><a name="axis2xml">&lt;axis2xml&gt;</a></b></h4>
        
<div>The <code>axis2.xml</code> file to be copied into the repository.</div>
        
<ul>
          
<li><b>Type</b>: <code>java.io.File</code></li>
          
<li><b>Required</b>: <code>No</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CconfigurationDirectory.3E"></a><b><a name="configurationDirectory">&lt;configurationDirectory&gt;</a></b></h4>
        
<div>The directory (relative to the repository root) where the
<code>axis2.xml</code> file will be written. If this parameter is not
set, then the file will be written into the repository root.</div>
        
<ul>
          
<li><b>Type</b>: <code>java.lang.String</code></li>
          
<li><b>Required</b>: <code>No</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CgenerateFileLists.3E"></a><b><a name="generateFileLists">&lt;generateFileLists&gt;</a></b></h4>
        
<div>Specifies whether the plugin should generate <code>services.list</code>
and <code>modules.list</code> files.</div>
        
<ul>
          
<li><b>Type</b>: <code>boolean</code></li>
          
<li><b>Required</b>: <code>No</code></li>
          
<li><b>Default</b>: <code>false</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CgeneratedAxis2xml.3E"></a><b><a name="generatedAxis2xml">&lt;generatedAxis2xml&gt;</a></b></h4>
        
<div>If present, an <code>axis2.xml</code> file will be generated
(Experimental).</div>
        
<ul>
          
<li><b>Type</b>: <code>org.apache.axis2.maven2.repo.GeneratedAxis2Xml</code></li>
          
<li><b>Required</b>: <code>No</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CincludeModules.3E"></a><b><a name="includeModules">&lt;includeModules&gt;</a></b></h4>
        
<div>Specifies whether modules should be deployed to the repository.</div>
        
<ul>
          
<li><b>Type</b>: <code>boolean</code></li>
          
<li><b>Required</b>: <code>No</code></li>
          
<li><b>Default</b>: <code>true</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CincludeServices.3E"></a><b><a name="includeServices">&lt;includeServices&gt;</a></b></h4>
        
<div>Specifies whether services should be deployed to the repository.</div>
        
<ul>
          
<li><b>Type</b>: <code>boolean</code></li>
          
<li><b>Required</b>: <code>No</code></li>
          
<li><b>Default</b>: <code>true</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CinputDirectory.3E"></a><b><a name="inputDirectory">&lt;inputDirectory&gt;</a></b></h4>
        
<div>Input directory with additional files to be copied to the
repository.</div>
        
<ul>
          
<li><b>Type</b>: <code>java.io.File</code></li>
          
<li><b>Required</b>: <code>No</code></li>
          
<li><b>Default</b>: <code>src/main/repository</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CjaxwsServices.3E"></a><b><a name="jaxwsServices">&lt;jaxwsServices&gt;</a></b></h4>
        
<div>A list of JAX-WS service JARs to be generated (by packaging class
files from the current project).</div>
        
<ul>
          
<li><b>Type</b>: <code>org.apache.axis2.maven2.repo.JAXWSService[]</code></li>
          
<li><b>Required</b>: <code>No</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CjaxwsServicesDirectory.3E"></a><b><a name="jaxwsServicesDirectory">&lt;jaxwsServicesDirectory&gt;</a></b></h4>
        
<div>The directory (relative to the repository root) where JAX-WS
service JARs will be deployed.</div>
        
<ul>
          
<li><b>Type</b>: <code>java.lang.String</code></li>
          
<li><b>Required</b>: <code>No</code></li>
          
<li><b>Default</b>: <code>servicejars</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3Cmodules.3E"></a><b><a name="modules">&lt;modules&gt;</a></b></h4>
        
<div>Comma separated list of modules (by artifactId) to include in the
repository.</div>
        
<ul>
          
<li><b>Type</b>: <code>java.lang.String</code></li>
          
<li><b>Required</b>: <code>No</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CmodulesDirectory.3E"></a><b><a name="modulesDirectory">&lt;modulesDirectory&gt;</a></b></h4>
        
<div>The directory (relative to the repository root) where MAR files are
copied. This should be set to the same value as the
<code>ModulesDirectory</code> property in <code>axis2.xml</code>.</div>
        
<ul>
          
<li><b>Type</b>: <code>java.lang.String</code></li>
          
<li><b>Required</b>: <code>No</code></li>
          
<li><b>Default</b>: <code>modules</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CoutputDirectory.3E"></a><b><a name="outputDirectory">&lt;outputDirectory&gt;</a></b></h4>
        
<div>The output directory where the repository will be created.</div>
        
<ul>
          
<li><b>Type</b>: <code>java.io.File</code></li>
          
<li><b>Required</b>: <code>No</code></li>
          
<li><b>Default</b>: <code>${project.build.directory}/repository</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CserviceDescriptions.3E"></a><b><a name="serviceDescriptions">&lt;serviceDescriptions&gt;</a></b></h4>
        
<div>A list of service descriptions that should be processed to build
exploded AARs.</div>
        
<ul>
          
<li><b>Type</b>: <code>org.apache.axis2.maven2.repo.ServiceDescription[]</code></li>
          
<li><b>Required</b>: <code>No</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3Cservices.3E"></a><b><a name="services">&lt;services&gt;</a></b></h4>
        
<div>Comma separated list of services (by artifactId) to include in the
repository.</div>
        
<ul>
          
<li><b>Type</b>: <code>java.lang.String</code></li>
          
<li><b>Required</b>: <code>No</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CservicesDirectory.3E"></a><b><a name="servicesDirectory">&lt;servicesDirectory&gt;</a></b></h4>
        
<div>The directory (relative to the repository root) where AAR files are
copied. This should be set to the same value as the
<code>ServicesDirectory</code> property in <code>axis2.xml</code>.</div>
        
<ul>
          
<li><b>Type</b>: <code>java.lang.String</code></li>
          
<li><b>Required</b>: <code>No</code></li>
          
<li><b>Default</b>: <code>services</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CstripModuleVersion.3E"></a><b><a name="stripModuleVersion">&lt;stripModuleVersion&gt;</a></b></h4>
        
<div>Specifies whether the plugin strips version numbers from MAR files.</div>
        
<ul>
          
<li><b>Type</b>: <code>boolean</code></li>
          
<li><b>Required</b>: <code>No</code></li>
          
<li><b>Default</b>: <code>false</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CstripServiceVersion.3E"></a><b><a name="stripServiceVersion">&lt;stripServiceVersion&gt;</a></b></h4>
        
<div>Specifies whether the plugin strips version numbers from AAR files.</div>
        
<ul>
          
<li><b>Type</b>: <code>boolean</code></li>
          
<li><b>Required</b>: <code>No</code></li>
          
<li><b>Default</b>: <code>true</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CuseDependencies.3E"></a><b><a name="useDependencies">&lt;useDependencies&gt;</a></b></h4>
        
<div>Specifies whether the plugin should scan the project dependencies
for AAR and MAR artifacts.</div>
        
<ul>
          
<li><b>Type</b>: <code>boolean</code></li>
          
<li><b>Required</b>: <code>No</code></li>
          
<li><b>Default</b>: <code>true</code></li>
        </ul><hr /></section><section>
<h4><a name="a.3CuseModules.3E"></a><b><a name="useModules">&lt;useModules&gt;</a></b></h4>
        
<div>Specifies whether the plugin should scan Maven modules for AAR and
MAR artifacts. This parameter only has an effect for multimodule
projects.</div>
        
<ul>
          
<li><b>Type</b>: <code>boolean</code></li>
          
<li><b>Required</b>: <code>No</code></li>
          
<li><b>Default</b>: <code>true</code></li>
        </ul>
      </section></section>
    </section>
  

        </div>
      </div>
    </div>
    <hr/>
    <footer>
      <div class="container-fluid">
        <div class="row-fluid">
            <p>Copyright &copy;2004&#x2013;2022
<a href="https://www.apache.org/">The Apache Software Foundation</a>.
All rights reserved.</p>
        </div>
        </div>
    </footer>
    </body>
</html>