<html><head>
      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
   <title>Appendix&nbsp;B.&nbsp;Eclipse Plug-in Development integration</title><link rel="stylesheet" type="text/css" href="css/html.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="Eclipse Gemini Blueprint Reference Guide"><link rel="up" href="appendixes.html" title="Part&nbsp;IV.&nbsp;Appendixes"><link rel="prev" href="appendix-security.html" title="Appendix&nbsp;A.&nbsp;Security Integration"><link rel="next" href="appendix-tips.html" title="Appendix&nbsp;C.&nbsp;Useful OSGi tips"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="appendix"><div class="titlepage"><div><div><h2 class="title"><a name="appendix-pde-integration"></a>Appendix&nbsp;B.&nbsp;Eclipse Plug-in Development integration</h2></div></div></div>
    

    <p>Eclipse <a class="ulink" href="http://www.eclipse.org/pde/" target="_top">PDE</a> <span class="quote">&#8220;<span class="quote">provides comprehensive OSGi tooling, which makes it 
    an ideal environment for component programming, not just Eclipse plug-in development</span>&#8221;</span>.
    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 <span class="emphasis"><em>normal</em></span> libraries, through 
    <a class="ulink" href="http://www.springide.org" target="_top">Spring IDE</a>, Gemini Blueprint can be installed as a 
    <a class="ulink" href="http://help.eclipse.org/stable/index.jsp?topic=/org.eclipse.pde.doc.user/guide/tools/preference_pages/target_platform.htm" target="_top">
    target platform</a> ready to be used with PDE.
   </p>
   
   <div class="procedure"><p>The following steps illustrate how to install Spring IDE extension for OSGi and how to use it in your project. Please see 
     <a class="ulink" href="http://springide.org/project/wiki/SpringideInstall" target="_top">Spring IDE installation page</a> for information on its requirement
     and install process.</p><ol class="procedure" type="1"><li class="step">
   	 	<p class="title"><b>Set Up Nightly Update Site</b></p>
   	 	<p>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:
   	 	</p>
   	 	<p>
		  </p><div class="mediaobject" align="left"><img src="images/pde/find-install.png" align="left"></div><p>
          
		  </p><div class="mediaobject" align="central"><img src="images/pde/springide-site.png" align="central"></div><p>        
          
        </p>
        
        <p>and create a new update site pointing to <code class="literal">http://www.springide.org/updatesite_nightly</code></p>
   	 </li><li class="step">
   	 	<p class="title"><b>Select Spring IDE OSGi extension</b></p>
   	 	<p>After using the nightly update site and performing the update, Eclipse will show the search results. Unfold the <span class="emphasis"><em>Extension</em></span> menu and select <code class="literal">Spring IDE OSGi Extension</code>:</p>
        <p>
		  </p><div class="mediaobject" align="center"><img src="images/pde/spring-osgi-plugin.png" align="middle" alt="Select Spring IDE OSGI extension"></div><p>        
        </p>
        
        <p>and proceed with the instalation.</p>   	 	
   	 </li><li class="step">
   	 	<p class="title"><b>Select Gemini Blueprint Target Platform</b></p>
   	 	<p>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.</p>
        <p>
		  </p><div class="mediaobject" align="center"><img src="images/pde/target-select.png" align="middle" alt="Select Gemini Blueprint target platform"></div><p>
        </p>
        
        <p>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.</p>
        
        <p>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 </p>
        <pre class="programlisting">mvn install</pre> 
        <p>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. </p>
   	 </li><li class="step">
   	 	<p class="title"><b>Select PDE Perspective</b></p>
   	 	<p>Once the installation is completed just select the PDE perspective:</p>
        <p>
		  <span class="inlinemediaobject"><img src="images/pde/select-pde-1.png" align="left"></span>
		  <span class="inlinemediaobject"><img src="images/pde/select-pde-2.png" align="central"></span>
          
        </p>
        
        <p>and the Gemini Blueprint and its dependencies should be available in the plug-ins view:</p>
        <p>
		  <span class="inlinemediaobject"><img src="images/pde/select-plugins-view.png" align="left"></span>

		  <span class="inlinemediaobject"><img src="images/pde/show-plugins.png" align="central"></span>          
        </p>        
   	 </li></ol></div>
</div><div xmlns:fo="http://www.w3.org/1999/XSL/Format" class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="appendix-security.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="appendix-tips.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Appendix&nbsp;A.&nbsp;Security Integration&nbsp;</td><td width="20%" align="center"><span style="color:white;font-size:90%;"><a href="http://www.SpringSource.com/" title="SpringSource - Spring from the Source">Sponsored by SpringSource
                                        </a></span></td><td width="40%" align="right" valign="top">&nbsp;Appendix&nbsp;C.&nbsp;Useful OSGi tips</td></tr></table></div></body></html>