<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" 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="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"><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 class="ulink" href="https://www.eclipse.org/proposals/gemini/" target="_top">proposal</a>,
      SpringSource <a class="ulink" href="http://spring.io/blog/2009/11/24/gemini-project-proposal-at-eclipse-org/" target="_top">contributed</a> the Spring Dynamic Modules
      (also known as Spring OSGi) <a class="ulink" 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 remain the same. Existing Spring DM applications can be easily migrated to Eclipse Gemini Blueprint
      as mentioned in the migration <a class="ulink" href="https://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 class="ulink" 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>