Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p><strong>Eclipse feature</strong> is the notion to manage the plug-ins to provide higher abstract.</p> <p>For example, there are more than twenty plug-ins for C/C++ development tools, so CDT has several features to organize those plug-ins in higher level abstract, for core functionality, ui, build and so on.</p> <p>It also helps simplify the installation process, users only need know the top feature(with friendly name) of CDT. P2 API or classical install manage could find the plug-ins and sub-features including by the top feature, then install them.</p> <p>However feature could NOT help you creating high module system, because itself doesn't provide any functionality. It's not a part of OSGi spec, it's inherited from Eclipse 2.x or even older version.</p> <p><strong>Bundle</strong> is the essential of OSGi. According to the spec any bundle couldn't use other classes besides declaring the wire with the package of classes. Require-Bundle and Import-Package are the ways to create the wires.</p> <p>In a short word, feature and plug-in are totally different notions. Feature including plug-ins is doing different things comparing to Import-Package of bundle.</p> <p><strong>Update:</strong></p> <p>The requires tag of feature.xml is the legacy. The intend is that defining the dependencies of this feature with other plug-ins/features to help update manager to find the broken dependencies when installing or updating that feature. It does define the dependencies of that feature with other plug-ins, but it's used by update manager for installing or updating. Import-Package of bundle declares the actual and real dependency between your bundle and another module in the OSGi system.</p> <p>Since eclipse uses p2 as provisioning manager, it's not necessary to declare the 'requires' tag in your feature.xml. P2 would recognize the dependencies between your bundle and other modules that are declared by 'Import-Package' or 'Require-Bundle'. P2 won't install or update your feature if any dependency is not satisfied.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload