| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> |
| <HTML> |
| <HEAD> |
| |
| <meta name="copyright" content="Copyright (c) IBM Corporation and others 2000, 2005. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." > |
| |
| <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1"> |
| <META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css"> |
| |
| <LINK REL="STYLESHEET" HREF="../book.css" CHARSET="ISO-8859-1" TYPE="text/css"> |
| <title>Features</title> |
| </HEAD> |
| <BODY BGCOLOR="#ffffff"> |
| <H1 CLASS="Head" dir="ltr"> |
| Features</H1> |
| |
| <p>On disk, an Eclipse based product is structured as a collection of <em>plug-ins</em>. |
| Each plug-in contains the code that provides some of the product's |
| functionality. The code and other files for a plug-in are installed on the local |
| computer, and get activated automatically as required. A product's plug-ins are |
| grouped together into features. A <em>feature</em> is the smallest unit of separately downloadable and installable |
| functionality.</p> |
| <p>The fundamentally modular nature of the Eclipse platform makes it easy |
| to install additional features and plug-ins into an Eclipse based |
| product, and to update the product's existing features and plug-ins. You |
| can do this either by using traditional native installers running separately from Eclipse, |
| or by using the Eclipse platform's own update manager. The Eclipse <em>update |
| manager</em> can be used to discover, download, and install updated features and |
| plug-ins from special web based Eclipse update sites.</p> |
| <p>The basic underlying mechanism of the update manager is simple: the files for a feature or |
| plug-in are always stored in a sub-directory whose name includes a version |
| identifier (e.g., "2.0.0"). Different versions of a feature or plug-in |
| are always given different version identifiers, thereby ensuring that |
| multiple versions of the same feature or plug-in can co-exist on |
| disk. This means that installing or updating features and plug-ins requires |
| adding more files, but never requires deleting or overwriting existing files. |
| Once the files are installed on the local computer, the new feature and plug-in |
| versions are available to be configured. The same installed base of files is |
| therefore capable of supporting many different <em>configurations</em> |
| simultaneously; installing and upgrading an existing product is reduced to |
| formulating a configuration that is incrementally newer than the current one. Important |
| configurations can be saved and restored to active service in the |
| event of an unsuccessful upgrade.</p> |
| |
| <p>Large Eclipse based products can organize their features into trees starting |
| from the root feature that represents the entire product. This root feature then |
| includes smaller units of functionality all the way down to leaf features that |
| list one or more plug-ins and fragments. The capability to group features |
| hierarchically allows products to be stacked using a 'Russian doll' approach - a |
| large product can build on top of a smaller one by including it and adding more |
| features.</p> |
| |
| <p>Some included features may be useful add-ons, but are not vital to the proper |
| functioning of the overall product. Feature providers can elect to mark them as <b>optional</b>. |
| When installing optional features, users are provided with a choice of whether |
| they want them or not. If not installed right away, optional features can be |
| added at a later date.</p> |
| |
| <p>The <b>About</b> option on the <b>Help</b> menu provides information |
| about installed features and plug-ins. The <b>Software Updates</b> sub-menu |
| on the <b>Help</b> menu groups together commands for updating existing features, and |
| for finding, downloading, and installing new features. |
| </p> |
| |
| |
| <P><img border="0" src="../images/ngrelc.png" alt="Related concepts" ><br> |
| <a href="concepts-2.htm">Workbench</a></P> |
| |
| <P> |
| <img border="0" src="../images/ngrelt.png" alt="Related tasks" > |
| <br><a href="../tasks/tasks-33.htm">Inspecting the current configuration</a> |
| <br><a href="../tasks/tasks-34.htm">Installing new features with the update manager</a> |
| <br><a href="../tasks/tasks-35.htm">Enabling, disabling, and uninstalling features</a> |
| <br> |
| <a href="../tasks/tasks-36.htm">Updating features with the update manager</a> |
| <br> |
| <a href="../tasks/tasks-37.htm">Controlling the Eclipse update policy</a> |
| <br><a href="../tasks/tasks-38.htm">Restoring a saved configuration</a> |
| </P> |
| |
| </BODY> |
| </HTML> |