    <h3>3.8.0 Install via p2 repository</h3>
     <p>
     For a detailed step-by-step description of how to install OSGi Remote Services into Eclipse 
     see <a href="http://wiki.eclipse.org/Installing_OSGi_Remote_Services#Install_into_Eclipse">Installing Into Eclipse</a>.  For a 
     step-by-step description of how to add OSGi Remote Services into your <b>Target Platform</b> see 
     <a href="http://wiki.eclipse.org/Installing_OSGi_Remote_Services">Add to Target Platform</a>.
     <p>
      <ul>
       <li>In Eclipse, choose <b>Help -> Install New Software...</b></li>
       <li>Click on the <b>Add</b> button on the right. </li>
       <li>Type in a Name in the textbox. For example, type: <b>ECF 3.8.0</b>.</li>
       
       <li>Paste the following URL into the Location field. <br><br>
       <b>http://download.eclipse.org/rt/ecf/3.8.0/site.p2</b></li>
       <li> Click OK. </li>
       
       <li>Select the first <b>two</b> check boxes for install into Eclipse..i.e.
       <b>ECF OSGi Remote Services/Remote Service Admin SDK</b> and the <b>ECF SDK for Eclipse</b>.
       To explain:  The ECF repository has three top-level items for install:  </li>
       <ol>
       <li><b>ECF OSGi Remote Services/Remote Service Admin SDK</b></li>
       <li><b>ECF SDK for Eclipse</b></li>
       <li><b>ECF Supplemental File Transfer Providers</b></li>
       </ol>
       You should generally select the <b>first two</b> of these (ECF OSGi Remote Services/Remote Service Admin SDK) and the ECF SDK for Eclipse) to get all of the
       OSGi Remote Services and Eclipse-based ECF plugins.   If you are only interested in OSGi Remote Services (e.g. for OSGi server-based work), you may choose to only
       install the Remote Services SDK.   It should generally not be necessary to install the ECF Supplemental File Transfer Providers.
       <p>
       Of course, you may also uncheck the <b>Group items by category</b> checkbox and choose the individual ECF features ala carte to get only the parts of ECF that you wish.
       <li>Click on Next.
       
       <li>Follow through the remaining dialogs to complete the installation.</li>
      </ul>
     <p>
     To uninstall ECF SDK...
     <ul>
     <li>Choose <b>Help -> Install New Software...</b></li>
     <li>Click on <b>already installed</b> (lower part of install manager dialog)</li>
     <li>Click on <b>Installed Software tab</b></li>
     <li>Click on <b>ECF SDK</b></li>
     <li>Click on <b>Uninstall ...</b></li>
     </ul>
     </p>
     
     
         