Hi, Felix list,
I intend to write a new Maven 2.0 plugin this weekend, tentatively
called the "Felix Product Plugin." The intent of this plugin is to
combine the Felix runtime with jars gathered from Maven repos and
combine them into a tarball that, when exploded, yields the usual
.sh/.bat file for running Felix and installing and starting bundles as a
complete "Felix product." I believe "product" is in line with Eclipse
terminology and I wouldn't want to introduce any containerisms. This is
the first of a couple Felix subprojects I'd like to see that bring
reusable product infrastructure to Felix, such as installers and daemons.
At this time, I'd like to start gathering feedback on this plugin and
run some ideas by you. I am proposing and planning:
o To create a new 'packaging' type, called 'felix-product' that
triggers the use of this plugin.
o To interrogate dependencies in the POM for their 'packaging' type.
If 'jar' they are added to the classpath. If 'osgi-bundle' they are
added to the bundle/ dir and the config.properties is built such that
the bundle is installed and/or started in the Felix runtime. I have no
idea how I am going to configure initial start levels, so I'll likely
make them all "1" for the first version. This could be easy; I just
haven't looked.
o To put the usual Felix files in the right places; bundles to bundle/,
runtime to lib/, license, .bat, and .sh to the root, etc.
o To start a Main with the Felix runtime loaded with the config.properties.
o To assemble everything into a suitable (tgz?) artifact with the
maven-assembly-plugin.
Enrique