Eclipse Rich Client Platform
While the Eclipse platform is designed to serve as an open tools platform, it is architected so that its components could be
used to build just about any client application. The minimal set of plug-ins needed to build a rich client application is collectively
known as the Rich Client Platform.
Applications that don't require a common resource model can be built using a subset of the platform. These rich applications
are still based on a dynamic plug-in model, and the UI is built using the same toolkits and extension points. The layout and
function of the workbench is under fine-grained control of the plug-in developer in this case.
When we say that the Rich Client Platform is the minimal set of plug-ins needed to build a platform application with
a UI, we mean that your application need only require two plug-ins, org.eclipse.ui and org.eclipse.core.runtime,
and their prerequisites.
However, rich client applications are free to use any API deemed necessary
for their feature set, and can require any plug-ins above the bare minimum. Examples include the Help UI, and the Update Manager.
For more details on what is included in the Rich Client Platform, see the RCP FAQ.
FAQs
The following are relevant help topics from the Platform Plug-in Developer Guide (from within the Eclipse IDE: Help > Help Contents > Platform Plug-in Developer Guide). The links below are to the online Eclipse 3.0 help.
The following newsgroups have useful discussions, questions and answers relevant to the development of RCP applications.
If you have a question, please check the RCP FAQ before posting to the newsgroups.
Kindly avoid posting to the developer mailing lists as these are intended for use by the development teams and others participating in the development of Eclipse itself.
The RCP Browser Example is an example of a simple RCP app.
Here is a screen shot.
To load the browser example source into your workspace, load project org.eclipse.ui.examples.rcp.browser from the Eclipse CVS repository.
Click here for instructions on using CVS with Eclipse.
For instructions on running the example, see the
readme file.
To run the example in binary form (last updated June 11, 2004 for the 3.0 RC2 build):
- Download the RCP Runtime build from the Downloads page, and extract it to a folder such as c:\browser-example.
- Download the browser plug-in zip and extract it to the eclipse/plugins subfolder.
- Replace the eclipse/configuration/config.ini file with the appropriate config file from the browser plugin. For example, on Windows,
copy eclipse/plugins/org.eclipse.ui.examples.rcp.browser_3.0.0/config_win32.ini to eclipse/configuration/config.ini .
- Run:
eclipse.exe.
The RCP Text Editor Example is an example of a simple RCP app that makes use of the text editing infrastructure (an optional RCP component).
Click here for the documentation for the example.
To run the example in binary form (last updated June 28, 2004 for the R3.0 build):
- Download the RCP Runtime build from the Downloads page, and extract it to a folder such as c:\texteditor-example.
- Download the RCP text editing component zip and extract it to the eclipse/plugins subfolder.
- Download the texteditor plugin zip and extract it to the eclipse/plugins subfolder.
- Replace the eclipse/configuration/config.ini file with the appropriate config file from the texteditor plugin. For example, on Windows,
copy eclipse/plugins/org.eclipse.ui.examples.rcp.texteditor_1.0.0/config_win32.ini to eclipse/configuration/config.ini .
- Run the eclipse executable: For example, on Windows, run
eclipse.exe.
To load the text editor example source into your workspace:
- Download the texteditor source plugin and save it on your harddisk.
- Create a new java project in your workspace and name it
org.eclipse.ui.examples.rcp.texteditor. Choose to "Create separate source and output folders".
- Choose File > Import > Zip File.
- Use the Browse button to select the zip file you downloaded in step 1. Choose the plugin created in step 2 as destination folder.
- Press Finish.
To run the example from your workspace:
- Choose Run > Debug...
- Under Run-time Workbench, there should be two new configurations: RCP Text Editor (gtk) and RCP Text Editor (win32).
- Edit the appropriate one as follows:
- on the Arguments tab, change the workspace location to some directory with write access (different than your host workspace, and different than the workspace used for other launch configs);
- in the Program to Run group, ensure that the application org.eclipse.ui.workbench.rcp.texteditor.application is selected;
- on the Plug-ins tab, press Deselect All, check org.eclipse.ui.workbench.rcp.texteditor, press Add Required Plug-ins, and also check org.eclipse.update.configurator.
- Press Debug.
- When the RCP Text Editor Example window opens, use File > Open to open a plain text, .xml, or .html file.
The presentation of your RCP application can be changed using the org.eclipse.ui.presentationFactories extension point. This example will show how to use the R2.1 presentation, provided by the org.eclipse.ui.presentations.r21 plugin, in the RCP Browser Example application. Here is a screen shot of the browser example using the R2.1 presentation.
The following steps will deploy the plugin into the RCP application and activate it by setting some preferences.
- Deploy the RCP browser example by following these instructions.
- Build and deploy the org.eclipse.ui.presentations.r21 plugin.
- Copy the file eclipse/plugins/org.eclipse.ui.presentations.r21_3.0.0/r21presentation.ini into the directory eclipse/plugins/org.eclipse.ui.examples.rcp.browser_3.0.0.
- Edit eclipse/plugins/org.eclipse.ui.examples.rcp.browser_3.0.0/plugin.xml so that the products extension looks like:
<extension
point="org.eclipse.core.runtime.products"
id="product">
<product
name="%productName"
application="org.eclipse.ui.examples.rcp.browser.app">
<property
name="appName"
value="%swtAppName"/>
<property
name="windowImages"
value="icons/eclipse.gif,icons/eclipse32.gif"/>
<property
name="aboutText"
value="%aboutText"/>
<property
name="aboutImage"
value="icons/eclipse_lg.gif"/>
<property
name="preferenceCustomization"
value="r21presentation.ini"/>
</product>
</extension>
- If you are not using the update configurator, then remember to edit the osgi.bundles property (in ./eclipse/configuration/config.ini) to include the new plug-in.
- Run:
eclipse.exe.
The following are the original design documents for the RCP work done in Eclipse 3.0. They are somewhat out of date and are provided here mainly for historical interest.
The tutorials and help topics above provide better materials for getting started with RCP.
The following are other resources describing the Eclipse Rich Client Platform, or related subjects: