Using Shared Licenses

Many Eclipse features use the same license. For example, all features in the Eclipse SDK use the Eclipse Foundation Software User Agreement. If individual licenses are added to each feature built with PDE, updating them will be very tedious. Using the shared license support allows multiple features to reference license text and files from a single location. This makes updating licenses across multiple features easier and less error prone.

To create a license feature, create a feature that does not include any bundles or features. Add the necessary license files and ensure they are included in your build.properties. The feature.properties should have two properties, licenseURL and license.

To make use of the shared license facility, simply open your feature.xml file in the feature editor. Select the Information tab and then the License Agreement section. Selecting Shared license will allow you to specify the feature and version that contains your license text and optional license files. The license-feature and license-feature-version attributes will be added to the feature element of your feature.xml. If you are converting a single license to a shared license, you should remove the license files from the individual features. The license information should be removed from feature.properties and build.properties.

Setting a shared license in your feature

Contents of feature using a shared license

The new shared license feature will have to be included in the build, so update your map files appropriately. You do not need to nest the feature in another feature to fetch it, it happens automatically. An IU will not be created in the p2 repository for the license feature, but the license text will be included in the p2 metadata.