| <?xml version="1.0" encoding="UTF-8"?> |
| <!DOCTYPE preface PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" |
| "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd"> |
| <appendix id="appendix-pde-integration"> |
| <title>Eclipse Plug-in Development integration</title> |
| |
| <para>Eclipse <ulink url="http://www.eclipse.org/pde/">PDE</ulink> <quote>provides comprehensive OSGi tooling, which makes it |
| an ideal environment for component programming, not just Eclipse plug-in development</quote>. |
| In fact, Eclipse IDE is built on top of OSGi and uses at its core the Equinox OSGi implementation. Moreover, all the Eclipse |
| plug-ins are OSGi bundles. This makes Eclipse with PDE a very attractive tool for creating OSGi bundles. |
| While Gemini Blueprint artifacts can be integrated as <emphasis>normal</emphasis> libraries, through |
| <ulink url="http://www.springide.org">Spring IDE</ulink>, Gemini Blueprint can be installed as a |
| <ulink url="http://help.eclipse.org/stable/index.jsp?topic=/org.eclipse.pde.doc.user/guide/tools/preference_pages/target_platform.htm"> |
| target platform</ulink> ready to be used with PDE. |
| </para> |
| |
| <procedure> |
| <para>The following steps illustrate how to install Spring IDE extension for OSGi and how to use it in your project. Please see |
| <ulink url="http://springide.org/project/wiki/SpringideInstall">Spring IDE installation page</ulink> for information on its requirement |
| and install process.</para> |
| |
| <step> |
| <title>Set Up Nightly Update Site</title> |
| <para>At the moment, the OSGi extension is available only on Spring-IDE nightly builds update site. Add it to the Eclipse configuration by |
| opening the software update menu: |
| </para> |
| <para> |
| <mediaobject> |
| <imageobject role="fo"> |
| <imagedata align="left" |
| fileref="../src/docbkx/resources/images/pde/find-install.png" |
| format="PNG" |
| width="272" depth="155" |
| /> |
| </imageobject> |
| |
| <imageobject role="html"> |
| <imagedata align="left" fileref="images/pde/find-install.png" |
| format="PNG" /> |
| </imageobject> |
| |
| </mediaobject> |
| |
| <mediaobject> |
| <imageobject role="fo"> |
| <imagedata align="central" |
| fileref="../src/docbkx/resources/images/pde/springide-site.png" |
| format="PNG" |
| width="199" depth="99"/> |
| </imageobject> |
| |
| <imageobject role="html"> |
| <imagedata align="central" fileref="images/pde/springide-site.png" |
| format="PNG"/> |
| </imageobject> |
| |
| </mediaobject> |
| |
| </para> |
| |
| <para>and create a new update site pointing to <literal>http://www.springide.org/updatesite_nightly</literal></para> |
| </step> |
| <step> |
| <title>Select Spring IDE OSGi extension</title> |
| <para>After using the nightly update site and performing the update, Eclipse will show the search results. Unfold the <emphasis>Extension</emphasis> menu and select <literal>Spring IDE OSGi Extension</literal>:</para> |
| <para> |
| <mediaobject> |
| <imageobject role="fo"> |
| <imagedata align="center" |
| fileref="../src/docbkx/resources/images/pde/spring-osgi-plugin.png" |
| format="PNG" |
| width="388" depth="335"/> |
| </imageobject> |
| |
| <imageobject role="html"> |
| <imagedata align="center" fileref="images/pde/spring-osgi-plugin.png" |
| format="PNG"/> |
| </imageobject> |
| |
| <textobject> |
| <phrase>Select Spring IDE OSGI extension</phrase> |
| </textobject> |
| </mediaobject> |
| </para> |
| |
| <para>and proceed with the instalation.</para> |
| </step> |
| |
| <step> |
| <title>Select Gemini Blueprint Target Platform</title> |
| <para>Once the plug-in has been installed, Gemini Blueprint can be selected as a PDE target platform. Select Window/Preferences/Plug-in Development and then |
| Target Platform.</para> |
| <para> |
| <mediaobject> |
| <imageobject role="fo"> |
| <imagedata align="center" |
| fileref="../src/docbkx/resources/images/pde/target-select.png" |
| format="PNG"/> |
| </imageobject> |
| |
| <imageobject role="html"> |
| <imagedata align="center" fileref="images/pde/target-select.png" |
| format="PNG"/> |
| </imageobject> |
| |
| <textobject> |
| <phrase>Select Gemini Blueprint target platform</phrase> |
| </textobject> |
| </mediaobject> |
| </para> |
| |
| <para>Select the Gemini Blueprint version that you desire from the Pre-defined Target (1) drop box and press Load Target (2). Eclipse will load the target and all bundles defined |
| by it - this includes Gemini Blueprint bundles and all of its dependencies (SLF4J is used for logging). The configuration can be customised appropriately by removing |
| and adding bundles.</para> |
| |
| <para>In its current form, the plug-in offers two predefined targets - one for the stable released versions and one for the SNAPSHOT/nightly Gemini Blueprint jars. The latter |
| does not contain any jars as it is expected for the user to download them manually. Simply locate the path where the plug-ins should be located (3), enter that folder |
| and do a </para> |
| <programlisting><![CDATA[mvn install]]></programlisting> |
| <para>The latest Gemini Blueprint SNAPSHOT will be downloaded along with all of its dependencies. |
| Simply click on the reload button (4) and Eclipse will pick up the bundles. </para> |
| </step> |
| |
| <step> |
| <title>Select PDE Perspective</title> |
| <para>Once the installation is completed just select the PDE perspective:</para> |
| <para> |
| <inlinemediaobject> |
| <imageobject role="fo"> |
| <imagedata align="left" |
| fileref="../src/docbkx/resources/images/pde/select-pde-1.png" |
| format="PNG" |
| width="173" depth="176"/> |
| </imageobject> |
| |
| <imageobject role="html"> |
| <imagedata align="left" fileref="images/pde/select-pde-1.png" |
| format="PNG"/> |
| </imageobject> |
| |
| </inlinemediaobject> |
| <inlinemediaobject> |
| <imageobject role="fo"> |
| <imagedata align="central" |
| fileref="../src/docbkx/resources/images/pde/select-pde-2.png" |
| format="PNG" |
| width="157" depth="197"/> |
| </imageobject> |
| |
| <imageobject role="html"> |
| <imagedata align="central" fileref="images/pde/select-pde-2.png" |
| format="PNG"/> |
| </imageobject> |
| </inlinemediaobject> |
| |
| </para> |
| |
| <para>and the Gemini Blueprint and its dependencies should be available in the plug-ins view:</para> |
| <para> |
| <inlinemediaobject> |
| <imageobject role="fo"> |
| <imagedata align="left" |
| fileref="../src/docbkx/resources/images/pde/select-plugins-view.png" |
| format="PNG" |
| width="243" depth="176"/> |
| </imageobject> |
| |
| <imageobject role="html"> |
| <imagedata align="left" fileref="images/pde/select-plugins-view.png" |
| format="PNG"/> |
| </imageobject> |
| |
| </inlinemediaobject> |
| |
| <inlinemediaobject> |
| |
| <imageobject role="fo"> |
| <imagedata align="central" |
| fileref="../src/docbkx/resources/images/pde/show-plugins.png" |
| format="PNG" |
| width="266" depth="257"/> |
| </imageobject> |
| |
| <imageobject role="html"> |
| <imagedata align="central" fileref="images/pde/show-plugins.png" |
| format="PNG"/> |
| </imageobject> |
| |
| </inlinemediaobject> |
| </para> |
| </step> |
| |
| </procedure> |
| </appendix> |