| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
| "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html lang="en" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> |
| <head> |
| <meta name="copyright" content= |
| "Copyright (c) IBM Corporation and others 2009, 2011. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." /> |
| <meta http-equiv="Content-Type" content= |
| "text/html; charset=utf-8" /> |
| <meta http-equiv="Content-Style-Type" content="text/css" /> |
| <link rel="STYLESHEET" href="../book.css" charset="ISO-8859-1" |
| type="text/css" /> |
| <title> |
| PDE Build Extensions to the p2 Publisher |
| </title> |
| <style type="text/css"> |
| /*<![CDATA[*/ |
| div.c2 {border:1px inset} |
| h3.c1 {font-weight: bold} |
| /*]]>*/ |
| </style> |
| |
| </head> |
| <body> |
| <h1> |
| PDE Build Extensions to the p2 Publisher |
| </h1> |
| <p> |
| PDE Build contributes several ant tasks that extend the |
| <a href= |
| "../../org.eclipse.platform.doc.isv/guide/p2_publisher.html">p2 |
| publisher</a>. These tasks allow PDE Build to publish |
| metadata and artifacts directly into a p2 repository. |
| </p> |
| <p> |
| |
| The generated build scripts use these tasks in the context of |
| a full build where things like compiling class files and |
| replacing versions are done. However, some of the tasks may |
| be usefull in special cases to publish metadata directly |
| without running a full build. |
| </p> |
| <table cellspacing="1" cellpadding="2"> |
| <tr> |
| <td> |
| <h3 class="c1"> |
| eclipse.publish.featuresAndBundles |
| </h3> |
| </td> |
| </tr> |
| |
| <tr> |
| <td> |
| <p> |
| This task is very similar to the |
| <tt>p2.publish.featuresAndBundles</tt> task contributed |
| by the p2 publisher. This task will publish metadata |
| for pre-existing binary features and plug-ins which are |
| not being built from source. The task will also publish |
| categories based on a provided site.xml or category.xml |
| file. |
| </p> |
| </td> |
| </tr> |
| <tr> |
| |
| <td> |
| <p> |
| This task supports the following attributes: |
| </p> |
| <table border="5" cellspacing="0" cellpadding="1" width= |
| "95%" align="center"> |
| <tr> |
| <td> |
| <tt>metadataRepository</tt> |
| </td> |
| |
| <td> |
| A URI specifying the metadata repository to publish |
| to. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt>artifactRepository</tt> |
| </td> |
| <td> |
| |
| A URI specifying the artifact repository to publish |
| to. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt>repository</tt> |
| </td> |
| <td> |
| Sets both metadataRepository and |
| artifactRepository. |
| </td> |
| |
| </tr> |
| <tr> |
| <td> |
| <tt>site</tt> |
| </td> |
| <td> |
| A URL to a site.xml specifying category |
| information. |
| </td> |
| </tr> |
| |
| <tr> |
| <td> |
| <tt>category</tt> |
| </td> |
| <td> |
| A URL to a category.xml specifyiny category |
| information. |
| </td> |
| </tr> |
| <tr> |
| |
| <td> |
| <tt>siteQualifier</tt> |
| </td> |
| <td> |
| A qualifier used to ensure resulting category IUs |
| have unique names. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| |
| <tt><features></tt> |
| </td> |
| <td> |
| A nested fileset element specifying the locations |
| of binary features to publish. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt><bundles></tt> |
| |
| </td> |
| <td> |
| A nested fileset element specifying the locations |
| of binary plug-ins to publish. |
| </td> |
| </tr> |
| </table> |
| </td> |
| </tr> |
| </table>Example: |
| <div class="c2"> |
| |
| <pre> |
| <eclipse.publish.featuresAndBundles repository="file:C:/build/repository" category="file:C:/build/category.xml" > |
| <features dir="C:\eclipse\features\" includes="org.eclipse.cvs_1.1.100.v20090514-7E79FEc9BJ99r9XGQ3CICF" /> |
| <bundles dir="C:\eclipse\plugins" includes="org.eclipse.cvs_1.0.300.v20090520.jar" /> |
| <bundles dir="C:\eclipse\plugins" includes="org.eclipse.team.cvs.core_3.3.200.I20090430-0408.jar" /> |
| <bundles dir="C:\eclipse\plugins" includes="org.eclipse.team.cvs.ssh_3.2.100.I20090508-2000.jar" /> |
| |
| <bundles dir="C:\eclipse\plugins" includes="org.eclipse.team.cvs.ssh2_3.2.200.I20090508-2000.jar" /> |
| <bundles dir="C:\eclipse\plugins" includes="org.eclipse.team.cvs.ui_3.3.200.I20090521-1750.jar" /> |
| </eclipse.publish.featuresAndBundles> |
| </pre> |
| </div><br /> |
| <table cellspacing="1" cellpadding="2"> |
| <tr> |
| <td> |
| |
| <h3 class="c1"> |
| eclipse.gatherBundle |
| </h3> |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <p> |
| Publish a plug-in directly from source. Once the .class |
| files for a bundle are compiled, this task will gather |
| up all the files that make up the binary result and |
| publish them as a p2 artifact with metadata. This task |
| is used in the <tt>publish.bin.parts</tt> task in the |
| plug-in's generated build.xml, this task replaces the |
| <tt>gather.bin.parts</tt> task when you are building |
| with the p2 publisher. |
| </p> |
| |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <p> |
| This task supports the following attributes: |
| </p> |
| <table border="5" cellspacing="0" cellpadding="1" width= |
| "95%" align="center"> |
| <tr> |
| |
| <td> |
| <tt>metadataRepository</tt> |
| </td> |
| <td> |
| A URI to the metadata repository to publish to. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| |
| <tt>artifactRepository</tt> |
| </td> |
| <td> |
| A URI to the artifact repository to publish to. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt>buildResultFolder</tt> |
| |
| </td> |
| <td> |
| Folder containing built .class files, the Manifest |
| and potentially .api_description files. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt>targetFolder</tt> |
| </td> |
| |
| <td> |
| Content when running with customBuildCallbacks. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt>baseDirectory</tt> |
| </td> |
| <td> |
| |
| Project location to gather content from when not |
| using customBuildCallbacks |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt>unpack</tt> |
| </td> |
| <td> |
| Whether or not the plug-in should be unpacked into |
| folder form when installed. |
| </td> |
| |
| </tr> |
| <tr> |
| <td> |
| <tt>gatheredSource</tt> |
| </td> |
| <td> |
| For source bundles, the location of the gather |
| source. |
| </td> |
| </tr> |
| |
| <tr> |
| <td> |
| <tt><outputFolder></tt> |
| </td> |
| <td> |
| Nested elements specifying alternate locations to |
| get .class files from, used when reusing .class |
| files from the workspace. This is an ant FileSet |
| with an additional "<tt>library</tt>" attribute |
| specifying which library the class files belong to |
| </td> |
| </tr> |
| |
| </table> |
| </td> |
| </tr> |
| </table>Example: |
| <div class="c2"> |
| <pre> |
| <eclipse.gatherBundle metadataRepository="file:/build/repo" artifactRepository="file:/build/repo" |
| buildResultFolder="${basedir}" baseDirectory="${basedir}" unpack="true" > |
| <outputFolder library="lib/pdebuild-ant.jar" dir="${basedir}" includes="bin_ant/**" /> |
| |
| <outputFolder library="pdebuild.jar" dir="${basedir}" includes="bin/**" /> |
| </eclipse.gatherBundle> |
| </pre> |
| </div><br /> |
| <table cellspacing="1" cellpadding="2"> |
| <tr> |
| <td> |
| <h3 class="c1"> |
| |
| eclipse.gatherFeature |
| </h3> |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <p> |
| Publish a feature directly from source. This task will |
| gather up all the files that make up the feature jar |
| and publish them as a p2 artifact with metadata. This |
| task will also publish artifacts containing any |
| <a href="pde_rootfiles.htm">root files</a> that are |
| contributed by this feature. If the feature does not |
| specify a <tt>bin.includes</tt> property, then the |
| feature jar will not be generated, but there will still |
| be root file artifacts and feature group metadata. |
| </p> |
| |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <p> |
| This task supports the following attributes: |
| </p> |
| <table border="5" cellspacing="0" cellpadding="1" width= |
| "95%" align="center"> |
| <tr> |
| |
| <td> |
| <tt>metadataRepository</tt> |
| </td> |
| <td> |
| A URI to the metadata repository to publish to. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| |
| <tt>artifactRepository</tt> |
| </td> |
| <td> |
| A URI to the artifact repository to publish to. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt>buildResultFolder</tt> |
| |
| </td> |
| <td> |
| Folder containing a modified feature.xml with |
| versions replaced. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt>targetFolder</tt> |
| </td> |
| |
| <td> |
| Content when running with customBuildCallbacks. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt>baseDirectory</tt> |
| </td> |
| <td> |
| |
| The feature project location |
| </td> |
| </tr> |
| </table> |
| </td> |
| </tr> |
| </table>Example: |
| <div class="c2"> |
| <pre> |
| <eclipse.gatherFeature |
| metadataRepository="file:/build/repo" |
| artifactRepository="file:/build/repo" |
| buildResultFolder="${basedir}" |
| baseDirectory="${basedir}" |
| /> |
| |
| </pre> |
| </div><br /> |
| <table cellspacing="1" cellpadding="2"> |
| <tr> |
| <td> |
| <h3 class="c1"> |
| <a name="brand_p2_artifacts" id= |
| "brand_p2_artifacts">eclipse.brand.p2.artifacts</a> |
| </h3> |
| </td> |
| |
| </tr> |
| <tr> |
| <td> |
| <p> |
| Brand launcher artifacts for a product and republish |
| them with a new name for inclusion in the given |
| product. |
| </p> |
| </td> |
| </tr> |
| <tr> |
| |
| <td> |
| <p> |
| This task supports the following attributes: |
| </p> |
| <table border="5" cellspacing="0" cellpadding="1" width= |
| "95%" align="center"> |
| <tr> |
| <td> |
| <tt>metadataRepository</tt> |
| </td> |
| |
| <td> |
| A URI to the metadata repository to publish to. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt>artifactRepository</tt> |
| </td> |
| <td> |
| |
| A URI to the artifact repository to publish to. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt>config</tt> |
| </td> |
| <td> |
| The configuration for which the launchers will be |
| used. (eg "gtk.linux.x86") |
| </td> |
| |
| </tr> |
| <tr> |
| <td> |
| <tt>iconsList</tt> |
| </td> |
| <td> |
| Locations to find the icons to brand the executable |
| with. |
| </td> |
| </tr> |
| |
| <tr> |
| <td> |
| <tt>tempDirectory</tt> |
| </td> |
| <td> |
| The location of a temporary directory that can be |
| be used. |
| </td> |
| </tr> |
| <tr> |
| |
| <td> |
| <tt>productId</tt> |
| </td> |
| <td> |
| The id of the product we are publishing for. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| |
| <tt>productVersion</tt> |
| </td> |
| <td> |
| The version of the product we are publishing for. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt>launcherName</tt> |
| |
| </td> |
| <td> |
| The name to give the new launcher. |
| </td> |
| </tr> |
| <tr> |
| <td> |
| <tt>launcherProvider</tt> |
| </td> |
| |
| <td> |
| The name of the IU which is providing the original |
| launcher artifacts. By default this is |
| "org.eclipse.equinox.executable", the task will be |
| looking for artifacts named |
| <tt><launcherProvider>_root.<config></tt> |
| </td> |
| </tr> |
| </table> |
| </td> |
| </tr> |
| |
| </table> |
| </body> |
| </html> |