| <!DOCTYPE html> |
| <!-- |
| | Generated by Apache Maven Doxia Site Renderer 1.8.1 at 2019-06-06 |
| | 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="20190606" /> |
| <meta http-equiv="Content-Language" content="en" /> |
| <title>Apache Sling Maven Plugin – Plugin Documentation</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"><div id="bannerLeft"><h2>Apache Sling Maven 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-06-06<span class="divider">|</span> |
| </li> |
| <li id="projectVersion">Version: 2.4.2</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="Introduction"><span class="none"></span>Introduction</a> </li> |
| <li class="active"><a href="#"><span class="none"></span>Goals</a> |
| </li> |
| <li class="nav-header">Project Documentation</li> |
| <li><a href="project-info.html" title="Project Information"><span class="icon-chevron-right"></span>Project Information</a> </li> |
| <li><a href="project-reports.html" title="Project Reports"><span class="icon-chevron-down"></span>Project Reports</a> |
| <ul class="nav nav-list"> |
| <li><a href="surefire-report.html" title="Surefire Report"><span class="none"></span>Surefire Report</a> </li> |
| <li><a href="jira-report.html" title="JIRA Report"><span class="none"></span>JIRA Report</a> </li> |
| <li class="active"><a href="#"><span class="none"></span>Plugin Documentation</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="Plugin_Documentation"></a>Plugin Documentation</h2><a name="Plugin_Documentation"></a> |
| <p>Goals available for this plugin:</p> |
| <table border="0" class="table table-striped"> |
| <tr class="a"> |
| <th>Goal</th> |
| <th>Description</th></tr> |
| <tr class="b"> |
| <td><a href="deploy-mojo.html">sling:deploy</a></td> |
| <td>Deploy a JAR representing an OSGi Bundle to a Sling OSGi Bundle |
| Repository. This method posts the bundle built by maven to the OSGi |
| Bundle Repository. The plugin uses a <em>multipart/format-data</em> |
| POST request to just post the file to the URL configured in the |
| <code>obr</code> property.</td></tr> |
| <tr class="a"> |
| <td><a href="deploy-file-mojo.html">sling:deploy-file</a></td> |
| <td>Deploy a JAR representing an OSGi Bundle to a Sling OSGi Bundle |
| Repository. This method posts the bundle referenced via |
| <code>sling.file</code> to an OSGi Bundle Repository accepting the |
| bundle. The plugin uses a <em>multipart/format-data</em> POST |
| request to just post the file to the URL configured in the |
| <code>obr</code> property.</td></tr> |
| <tr class="b"> |
| <td><a href="fsmount-mojo.html">sling:fsmount</a></td> |
| <td>Creates OSGi configurations for the <a |
| href="https://sling.apache.org/documentation/bundles/accessing-filesystem-resources-extensions-fsresource.html">Apache |
| Sling File System Resource Provider</a>.</td></tr> |
| <tr class="a"> |
| <td><a href="fsunmount-mojo.html">sling:fsunmount</a></td> |
| <td>Removes OSGi configurations for the <a |
| href="https://sling.apache.org/documentation/bundles/accessing-filesystem-resources-extensions-fsresource.html">Apache |
| Sling File System Resource Provider</a>.</td></tr> |
| <tr class="b"> |
| <td><a href="generate-adapter-metadata-mojo.html">sling:generate-adapter-metadata</a></td> |
| <td>Build <a |
| href="http://sling.apache.org/documentation/the-sling-engine/adapters.html">adapter |
| metadata (JSON)</a> for the Web Console Plugin at |
| <code>/system/console/status-adapters</code> and |
| <code>/system/console/adapters</code> from classes annotated with |
| <a |
| href="http://svn.apache.org/viewvc/sling/trunk/tooling/maven/adapter-annotations/">adapter |
| annotations</a>.</td></tr> |
| <tr class="a"> |
| <td><a href="help-mojo.html">sling:help</a></td> |
| <td>Display help information on sling-maven-plugin.<br /> |
| Call <code>mvn sling:help -Ddetail=true |
| -Dgoal=<goal-name></code> to display parameter details.</td></tr> |
| <tr class="b"> |
| <td><a href="install-mojo.html">sling:install</a></td> |
| <td>Install an OSGi bundle to a running Sling instance. The plugin |
| places an HTTP POST request to <a |
| href="http://felix.apache.org/documentation/subprojects/apache-felix-web-console/web-console-restful-api.html#post-requests">Felix |
| Web Console</a>. It's also possible to HTTP PUT instead of POST |
| leveraging the <a |
| href="http://sling.apache.org/documentation/development/repository-based-development.html">WebDAV |
| bundle from Sling</a>. Since version 2.1.8 you can also leverage |
| the the <a |
| href="http://sling.apache.org/documentation/bundles/manipulating-content-the-slingpostservlet-servlets-post.html">Sling |
| POST servlet</a> for that The chosen method depends on the |
| parameter <code>deploymentMethod</code>. <br /> |
| <p><strong>Intermediate Node Creation</strong></p> |
| <p>For all <code>deploymentMethod</code>s except WebDAV the bundle |
| is not directly deployed within the OSGi container, but rather |
| being uploaded to the JCR and from there on being picked up by the |
| <a |
| href="https://sling.apache.org/documentation/bundles/jcr-installer-provider.html">JCR |
| Installer Provider</a> asynchronously, which takes care of |
| deploying it in the OSGi container. For both other deployment |
| methods, intermediate nodes (i.e. inexisting parent nodes) are |
| automatically created. The primary type of those intermediate nodes |
| depend on the deployment method.</p> |
| <ul> |
| <li>WebDAV, uses the configured collection node type, by default |
| <code>sling:Folder</code> (see also <a |
| href="https://sling.apache.org/documentation/development/repository-based-development.html">WebDAV |
| Configuration</a>)</li> |
| <li>SlingPostServlet, uses internally |
| <code>ResourceResolverFactory.create(...)</code> without setting |
| any <code>jcr:primaryType</code>. Therefore the |
| <code>JcrResourceProviderFactory</code> will call |
| <code>Node.addNode(String relPath)</code> which determines a |
| fitting node type automatically, depending on the parents node type |
| definition (see <a |
| href="http://www.day.com/specs/jsr170/javadocs/jcr-2.0/javax/jcr/Node.html#addNode%28java.lang.String%29">Javadoc</a>). |
| So in most of the cases this should be a <code>sling:Folder</code>, |
| as this is the first allowed child node definition in |
| <code>sling:Folder</code>. This only may differ, if your existing |
| parent node is not of type <code>sling:Folder</code> itself.</li> |
| </ul></td></tr> |
| <tr class="a"> |
| <td><a href="install-file-mojo.html">sling:install-file</a></td> |
| <td>Install an OSGi bundle to a running Sling instance.</td></tr> |
| <tr class="b"> |
| <td><a href="uninstall-mojo.html">sling:uninstall</a></td> |
| <td>Uninstall an OSGi bundle from a running Sling instance. The plugin |
| places by default an HTTP POST request to <a |
| href="http://felix.apache.org/documentation/subprojects/apache-felix-web-console/web-console-restful-api.html#post-requests">Felix |
| Web Console</a> to uninstall the bundle. It's also possible to use |
| HTTP DELETE leveraging the <a |
| href="http://sling.apache.org/documentation/development/repository-based-development.html">WebDAV |
| bundle from Sling</a>. or the <a |
| href="http://sling.apache.org/documentation/bundles/manipulating-content-the-slingpostservlet-servlets-post.html">Sling |
| POST servlet</a> to uninstall the bundle. The chosen method depends |
| on the parameter <code>deploymentMethod</code>.</td></tr> |
| <tr class="a"> |
| <td><a href="validate-mojo.html">sling:validate</a></td> |
| <td>The <code>validate</code> goal checks the JSON code of a bundle.</td></tr></table> |
| <div class="section"> |
| <h3><a name="System_Requirements"></a>System Requirements</h3><a name="System_Requirements"></a> |
| <p>The following specifies the minimum requirements to run this Maven plugin:</p> |
| <table border="0" class="table table-striped"> |
| <tr class="a"> |
| <td>Maven</td> |
| <td>3.0.4</td></tr> |
| <tr class="b"> |
| <td>JDK</td> |
| <td>1.8</td></tr> |
| <tr class="a"> |
| <td>Memory</td> |
| <td>No minimum requirement.</td></tr> |
| <tr class="b"> |
| <td>Disk Space</td> |
| <td>No minimum requirement.</td></tr></table></div> |
| <div class="section"> |
| <h3><a name="Usage"></a>Usage</h3><a name="Usage"></a> |
| <p>You should specify the version in your project's plugin configuration:</p> |
| <div class="source"><pre class="prettyprint"><project> |
| ... |
| <build> |
| <!-- To define the plugin version in your parent POM --> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.sling</groupId> |
| <artifactId>sling-maven-plugin</artifactId> |
| <version>2.4.2</version> |
| </plugin> |
| ... |
| </plugins> |
| </pluginManagement> |
| <!-- To use the plugin goals in your POM or parent POM --> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.sling</groupId> |
| <artifactId>sling-maven-plugin</artifactId> |
| <version>2.4.2</version> |
| </plugin> |
| ... |
| </plugins> |
| </build> |
| ... |
| </project> |
| </pre></div> |
| <p>For more information, see <a class="externalLink" href="http://maven.apache.org/guides/mini/guide-configuring-plugins.html">"Guide to Configuring Plug-ins"</a></p></div></div> |
| </div> |
| </div> |
| </div> |
| <hr/> |
| <footer> |
| <div class="container-fluid"> |
| <div class="row-fluid"> |
| <p>Copyright ©2007–2019 |
| <a href="https://www.apache.org/">The Apache Software Foundation</a>. |
| All rights reserved.</p> |
| </div> |
| </div> |
| </footer> |
| </body> |
| </html> |