John E. Conlon wrote:
On Fri, 2005-11-04 at 05:14, Enrique Rodriguez wrote:

Hi, Felix list,

I intend to write a new Maven 2.0 plugin this weekend, tentatively called the "Felix Product Plugin."

So this would be an new version of the current maven-osgi-plugin right?

No, it will be an entirely new plugin. The maven-osgi-plugin packages osgi-bundles. This plugin will package felix-products. They are very different artifacts and I don't think it makes sense to make one plugin, even if it was possible.

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."

With a 'Felix Product Plugin' would we still need to have the
functionality in Felix to do a 'Oscar like' install procedure as
mentioned in the recent 'Installing Felix email thread'?

We will likely have both. Felix will remain untouched, allowing users to download and start it and add bundles manually. End users can't be expected to download the runtime and then start adding bundles to form a product such as Apache Directory. We need a way to create a combination of Felix + bundles + configuration as a shippable product, ideally in a way that we can version control.

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.

Couldn't these be addition child elements added to the dependency
elements?

I don't think so. If it's possible, I'd love to know. I had some properties left over from the Maven 1 OSGi plugin and Maven errored out due to POM DTD/schema violations. If you can add arbitrary props that would the ideal place to do it. If not I have to do a lame props-style enumeration in the plugin config.

Enrique

Reply via email to