| <!DOCTYPE html> |
| <!-- |
| | Generated by Apache Maven Doxia Site Renderer 1.8.1 from org.apache.maven.plugins:maven-plugin-plugin:3.5.2:report at 2019-04-05 |
| | 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="20190405" /> |
| <meta http-equiv="Content-Language" content="en" /> |
| <title>Tycho OSGi Packaging Plugin – Plugin Documentation</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>Tycho OSGi Packaging 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-04-05<span class="divider">|</span> |
| </li> |
| <li id="projectVersion">Version: 1.4.0</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</li> |
| <li><a href="../index.html" title="Introduction"><span class="none"></span>Introduction</a></li> |
| <li><a href="../tycho-compiler-plugin/plugin-info.html" title="Compiler Plugin"><span class="none"></span>Compiler Plugin</a></li> |
| <li><a href="../tycho-packaging-plugin/plugin-info.html" title="Packaging Plugin"><span class="none"></span>Packaging Plugin</a></li> |
| <li><a href="../BuildProperties.html" title="Build Properties"><span class="none"></span>Build Properties</a></li> |
| <li><a href="../tycho-surefire-plugin/plugin-info.html" title="Surefire Plugin"><span class="none"></span>Surefire Plugin</a></li> |
| <li><a href="../tycho-p2/tycho-p2-publisher-plugin/plugin-info.html" title="p2 Publisher Plugin"><span class="none"></span>p2 Publisher Plugin</a></li> |
| <li><a href="../tycho-p2/tycho-p2-repository-plugin/plugin-info.html" title="p2 Repository Plugin"><span class="none"></span>p2 Repository Plugin</a></li> |
| <li><a href="../tycho-p2/tycho-p2-director-plugin/plugin-info.html" title="p2 Director Plugin"><span class="none"></span>p2 Director Plugin</a></li> |
| <li><a href="../tycho-source-plugin/plugin-info.html" title="Source Plugin"><span class="none"></span>Source Plugin</a></li> |
| <li><a href="../tycho-release/tycho-versions-plugin/plugin-info.html" title="Versions Plugin"><span class="none"></span>Versions Plugin</a></li> |
| <li><a href="../tycho-pomgenerator-plugin/plugin-info.html" title="POM Generator Plugin"><span class="none"></span>POM Generator Plugin</a></li> |
| <li><a href="../TychoProperties.html" title="Tycho Properties"><span class="none"></span>Tycho Properties</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" > |
| <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="build-qualifier-mojo.html">tycho-packaging:build-qualifier</a></td> |
| <td><p>This mojo generates the build qualifier according to the <a |
| href="http://help.eclipse.org/kepler/topic/org.eclipse.pde.doc.user/tasks/pde_version_qualifiers.htm">rules |
| described in the PDE documentation</a>:</p> |
| <ol> |
| <li>Explicit -DforceContextQualifier command line parameter</li> |
| <li>forceContextQualifier from |
| ${project.baseDir}/build.properties</li> |
| <li>A time stamp in the form YYYYMMDDHHMM (e.g. 200605121600)</li> |
| </ol> |
| <br /> |
| <br /> |
| |
| <p>The generated qualifier is assigned to |
| <code>buildQualifier</code> project property. The unqualified |
| project version is assigned to <code>unqualifiedVersion</code> |
| project property. The unqualified version is calculated based on |
| <code>${project.version}</code> and can be used for any Tycho |
| project and regular Maven project. Different projects can use |
| different formats to expand the timestamp (not recommended). The |
| concatenation of <code>${unqualifiedVersion}</code> and |
| <code>${buildQualifier}</code>, if not empty, is assigned to the |
| project property <code>qualifiedVersion</code>.</p> |
| <p>The timestamp generation logic is extensible. The primary use |
| case is to generate build version qualifier based on the timestamp |
| of the last project commit. Here is example pom.xml snippet that |
| enables custom timestamp generation logic</p> |
| <pre> |
| ... |
| <plugin> |
| <groupId>org.eclipse.tycho</groupId> |
| <artifactId>tycho-packaging-plugin</artifactId> |
| <version>${tycho-version}</version> |
| <dependencies> |
| <dependency> |
| <groupId>timestamp-provider-groupid</groupId> |
| <artifactId>timestamp-provider-artifactid</artifactId> |
| <version>timestamp-provider-version</version> |
| </dependency> |
| </dependencies> |
| <configuration> |
| <timestampProvider>custom</timestampProvider> |
| </configuration> |
| </plugin> |
| ... |
| |
| </pre></td></tr> |
| <tr class="a"> |
| <td><a href="build-qualifier-aggregator-mojo.html">tycho-packaging:build-qualifier-aggregator</a></td> |
| <td><p>This mojo calculates build timestamp as the latest timestamp of |
| the project itself and timestamps of bundles and features directly |
| included in the project. This is meant to work with custom |
| timestamp providers and generate build qualifier based on build |
| contents, i.e. the source code, and not the time the build was |
| started; rebuilding the same source code will result in the same |
| version qualifier.</p> |
| <p>Timestamp of included bundles and features is determined by |
| parsing their respective version qualifiers. Qualifiers that cannot |
| be parsed are silently ignored, which can result in old version |
| qualifier used even when aggregator project contents actually |
| changed. In this case aggregator project timestamp will have to be |
| increased manually, using artificial SCM commit for example.</p> |
| <p>Qualifier aggregation is enabled only for projects with custom |
| timestamp provider, i.e. <timestampProvider> is set in |
| pom.xml to a value other than "default". The default build |
| timestamp provider uses build start time as build timestamp, which |
| should be newer or equal than timestamp of any included |
| bundle/feature project, which makes qualifier aggregation |
| redundant.</p></td></tr> |
| <tr class="b"> |
| <td><a href="package-feature-mojo.html">tycho-packaging:package-feature</a></td> |
| <td>No description.</td></tr> |
| <tr class="a"> |
| <td><a href="package-iu-mojo.html">tycho-packaging:package-iu</a></td> |
| <td>Creates the zip for the IU and attaches it as an artifact</td></tr> |
| <tr class="b"> |
| <td><a href="package-plugin-mojo.html">tycho-packaging:package-plugin</a></td> |
| <td>Creates a jar-based plugin and attaches it as an artifact</td></tr> |
| <tr class="a"> |
| <td><a href="package-target-definition-mojo.html">tycho-packaging:package-target-definition</a></td> |
| <td>Registers the target definition file <artifactId>.target |
| expected in the basedir of a project as maven artifact.</td></tr> |
| <tr class="b"> |
| <td><a href="product-export-mojo.html">tycho-packaging:product-export</a></td> |
| <td>No description.</td></tr> |
| <tr class="a"> |
| <td><a href="update-site-mojo.html">tycho-packaging:update-site</a></td> |
| <td>No description.</td></tr> |
| <tr class="b"> |
| <td><a href="update-site-packaging-mojo.html">tycho-packaging:update-site-packaging</a></td> |
| <td>No description.</td></tr> |
| <tr class="a"> |
| <td><a href="validate-id-mojo.html">tycho-packaging:validate-id</a></td> |
| <td>Validates that project Maven and OSGi ids match.</td></tr> |
| <tr class="b"> |
| <td><a href="validate-version-mojo.html">tycho-packaging:validate-version</a></td> |
| <td>Validates project Maven and OSGi versions. For SNAPSHOT versions, |
| OSGi version qualifier must be ".qualifier" and unqualified Maven |
| and OSGi versions must be equal. For RELEASE versions, OSGi and |
| Maven versions must be equal.</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</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.eclipse.tycho</groupId> |
| <artifactId>tycho-packaging-plugin</artifactId> |
| <version>1.4.0</version> |
| </plugin> |
| ... |
| </plugins> |
| </pluginManagement> |
| <!-- To use the plugin goals in your POM or parent POM --> |
| <plugins> |
| <plugin> |
| <groupId>org.eclipse.tycho</groupId> |
| <artifactId>tycho-packaging-plugin</artifactId> |
| <version>1.4.0</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 ©2008–2019 |
| <a href="http://www.eclipse.org/">Eclipse Foundation</a>. |
| All rights reserved.</p> |
| </div> |
| </div> |
| </footer> |
| </body> |
| </html> |