SMILA/Documentation/HowTo/How to integrate new bundle into build process
The following steps have to be done to integrate a new bundle (plug-in) in the SMILA build process:
1. Include new plug-in into org.eclipse.smila.feature
For further information see: Howto build a SMILA Distribution
From today (build process depends on make.xml) you don´t have to modify the build file (make.xml) anymore. The make.xml file includes all SMILA bundles located under the local trunk folder, along with the bundles whose names match its <patternset> elements (com.*, net.* and so on). If you get an error such as "Unable to find bundle xxx", it's probably because it is not matched by make.xml and it is not copied in the build folder. If you don´t want to include your new bundle into the build process, the bundle has to be excluded explicit in the make.xml.
For further information see: Introduction to make.xml.
2. Optionally: Generate Source Bundle
The build process can also generate an additional source bundle for a new bundle so that debugging is easier when SMILA is used as a target platform (see How to set up the integration environment). This needs some manual modification of the files of the feature that includes the bundle:
- In org.eclipse.smila.feature/build.properties add a line like this using the bundle name of your new bundle:
firstname.lastname@example.org = org.eclipse.smila.sample.pipelet
- In org.eclipse.smila.feature/feature.xml add an entry like this to include the source bundle in the feature:
<plugin id="org.eclipse.smila.sample.pipelet.source" download-size="0" install-size="0" version="0.0.0" unpack="false"/>
- Ignore the warning that the bundle cannot be resolved. It is generated automatically at build time.
- In your bundle be sure to add at least the META-INF directory, the about files and the build.properties to the build configuration of the source build. Add additional files (schemas, sample configs, etc) as appropriate. Do NOT add the code/src or other source directories, this is done automatically by the build process: