<p>The objectives of the Eclipse Packaging project are to</p>
<ul>
	<li><b>Create entry level downloads based on defined user
	profiles.</b> The project defined and created the EPP downloads of
    Java Developer,	Java EE Developer, C/C++ Developer and RCP Developer.
    These downloads are available from the main Eclipse download page.</li>
	
  <li><b>Provide and integrate the EPP Usage Data Collector.</b> The
    The Usage Data Collector collects information about how individuals 
    are using the Eclipse platform. The intent is to use this data to help 
    committers and organizations better understand how developers are 
    using Eclipse.</li>

	<li><b>Provide an installer that improves the install experience 
    of new users of Eclipse.</b></li>

	<li><b>Provide a platform that allows the creation of packages
	(zip/tar downloads) from an update site.</b> The core technology of the
	project will enable the creation of download packages that are created
	by bundling Eclipse features from one or multiple Eclipse update sites.</li>
</ul>