<html><head>
      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
   <title>Chapter&nbsp;1.&nbsp;Spring Dynamic Modules becomes Eclipse Gemini Blueprint</title><link rel="stylesheet" href="css/html.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.72.0"><link rel="start" href="index.html" title="Eclipse Gemini Blueprint Reference Guide"><link rel="up" href="introduction.html" title="Part&nbsp;I.&nbsp;Introduction"><link rel="prev" href="introduction.html" title="Part&nbsp;I.&nbsp;Introduction"><link rel="next" href="why-Spring DM.html" title="Chapter&nbsp;2.&nbsp;Why Gemini Blueprint?"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="eclipse-migration"></a>Chapter&nbsp;1.&nbsp;Spring Dynamic Modules becomes Eclipse Gemini Blueprint</h2></div></div></div><p>
      In late 2009, as a member of the Gemini project <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://eclipse.org/proposals/gemini/" target="_top">proposal</a>, 
      SpringSource <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://blog.springsource.com/2009/11/24/gemini-project-proposal-at-eclipse-org/" target="_top">contributed</a> Spring Dynamic Modules 
      (also known as Spring OSGi) <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.springframework.org/osgi" target="_top">project</a>
      to the Eclipse Foundation. Spring DM v2 code base has been moved to Eclipse.org along with its issue tracker and forum. The project
      became dual licensed under Apache License and EPL.
      </p><p>
      While the name has changed, the code and its functionality remained the same. Existing Spring DM applications can be easily migrated to Eclipse Gemini Blueprint
      as mentioned in the migration <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.eclipse.org/gemini/blueprint/documentation/migration/" target="_top">guide</a>.
      </p><p>While the project name has changed (to Eclipse Gemini Blueprint) and significant efforts have been made to reflect this in the project documentation and resources,
      there might be places that we have missed; if you find any, please <a xmlns:xlink="http://www.w3.org/1999/xlink" href="https://bugs.eclipse.org/bugs/buglist.cgi?product=Gemini.Blueprint" target="_top">report</a> them to us.
      </p></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="introduction.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="why-Spring DM.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Part&nbsp;I.&nbsp;Introduction&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;Chapter&nbsp;2.&nbsp;Why Gemini Blueprint?</td></tr></table></div></body></html>