フィーチャーとは、製品を構成するプラグインのグループ化と記述の方法のことです。 プラグインをグループ化してフィーチャーにすると、製品のインストールおよび更新を、Eclipse を基にした製品と共存可能な方法で行うことができます。 プラットフォーム自体は、3 つの主なフィーチャーに分割されています。
その他に、サンプルまたはプラットフォームの OS 依存部分など、小さなフィーチャーが存在します。
注: プラットフォームのインストールおよび更新フレームワークを使用すると、 ここで説明されている概念の独自のカスタム・インプリメンテーションをビルドできます。 つまり、独自タイプのフィーチャー (そのパッケージ・フォーマット、インストール・プロシージャーなど) を、 フィーチャーを更新するための独自タイプのサーバー・サイトと共に定義できます。 説明の残りの部分では、フィーチャーと更新サイトのプラットフォーム・デフォルト・インプリメンテーションに焦点を置きます。
フィーチャーにコードは含まれていません。 フィーチャーは、フィーチャーに機能を提供するプラグインのセットと、それを更新する方法に関する情報を記述するだけです。 フィーチャーは、フィーチャー・アーカイブ・ファイルにパッケージされ、 フィーチャー・マニフェスト・ファイル feature.xml を使用して記述されます。 以下は、プラットフォーム・フィーチャーのマニフェストです。
<?xml version="1.0" encoding="UTF-8"?> <feature id="org.eclipse.platform" label="%featureName" version="2.0.0" image="eclipse_update_120.jpg" provider-name="%providerName" primary="true" application="org.eclipse.ui.workbench"> <description>%description</description> <license url="%licenseURL">%license</license> <url> <update url="http://update.eclipse.org/updates" label="%updateSiteName" /> </url> <plugin id="org.apache.ant" version="1.4.1" /> <plugin id="org.apache.lucene" version="1.2.0" /> <plugin id="org.apache.xerces" version="4.0.3" /> <plugin id="org.eclipse.ant.core" version="2.0.0" /> <plugin id="org.eclipse.compare" version="2.0.0" /> <plugin id="org.eclipse.core.boot" version="2.0.0" /> <plugin id="org.eclipse.core.resources" version="2.0.0" /> <plugin id="org.eclipse.core.runtime" version="2.0.0" /> <plugin id="org.eclipse.debug.core" version="2.0.0" /> <plugin id="org.eclipse.debug.ui" version="2.0.0" /> <plugin id="org.eclipse.help" version="2.0.0" /> <plugin id="org.eclipse.help.webapp" version="2.0.0" /> <plugin id="org.eclipse.help.ui" version="2.0.0" /> <plugin id="org.eclipse.platform" version="2.0.0" /> <plugin id="org.eclipse.platform.doc.user" version="2.0.0" /> <plugin id="org.eclipse.search" version="2.0.0" /> <plugin id="org.eclipse.swt" version="2.0.0" /> <plugin id="org.eclipse.team.core" version="2.0.0" /> <plugin id="org.eclipse.team.cvs.core" version="2.0.0" /> <plugin id="org.eclipse.team.cvs.ssh" version="2.0.0" /> <plugin id="org.eclipse.team.cvs.ui" version="2.0.0" /> <plugin id="org.eclipse.team.ui" version="2.0.0" /> <plugin id="org.eclipse.tomcat" version="4.0.3" /> <plugin id="org.eclipse.ui" version="2.0.0" /> <plugin id="org.eclipse.ui.externaltools" version="2.0.0" /> <plugin id="org.eclipse.update.core" version="2.0.0" /> <plugin id="org.eclipse.update.ui" version="2.0.0" /> <plugin id="org.eclipse.update.ui.forms" version="2.0.0" /> </feature>