3

I am developing an Eclipse RCP application and currently my head's a mess. I simply don't understand how the plug-ins and the other normal projects interact with one another, nor do I see how they interact with org.eclipse.* projects either.

So I have the Java Build Path that states which JDK I'm using, and also any external jars I might be needing, and the Target Platform that states on what plug-ins will the RCP application base upon, right?

Now I keep seeing all these required jars:

  • Plug-In Dependencies

plug-in dependencies

  • Required bundles in manifest.mf file (listed in Eclipse in the Dependencies tab)

required bundles in manifest.mf file

  • build properties' additional bundles build properties' additional bundles

So where exactly do these jars need to be? In the Target Platform? or in the Build Path? Does anyone know a good guide to describe this?

Any help / opinions /suggestions are appreciated.

EDIT: I've tried it out, and it seems that when there is a required bundle, it is resolved by adding it to the Target Platform...

Vlad Ilie
  • 1,389
  • 1
  • 13
  • 37

1 Answers1

4

The target platform is where you list the complete set of plugins that your RCP depends on, this might be one of the Eclipse downloads or it could be something else entirely.

The Required Plug-ins tab of the manifest.mf lists the plugins that your plugin uses directly. Eclipse will use this to maintain the class path for the plugin and will manage the Java Build Path automatically.

The Plug-in Dependencies list shows your plugin dependencies plus the indirect dependencies.

I have never had to use the additional.bundles in the build.properties so I am not sure why it would be used, none of the plugins in my RCPs use it.

Also on the dependencies tab is Imported Packages. This specifies packages to import without specifying a plugin, see Why do we need `Imported Packages` when we have `Required Plug-ins` in eclipse plugin dependencies?

Community
  • 1
  • 1
greg-449
  • 109,219
  • 232
  • 102
  • 145
  • Could you also tell me the difference between a required-bundle and an imported package in Manifest.MF as well? Thanks again, Greg-449! – Vlad Ilie Nov 08 '13 at 08:02
  • Added something about that and reference to another answer with more detail – greg-449 Nov 08 '13 at 08:29