Hi,
Am 02.07.2012 um 01:57 schrieb David Jencks:
> I think a lot of these issues may be solved by the eba-maven-plugin. I've
> been hoping to have a bit of time to copy and update it to deal with
> subsystems.
>
> I don't know of any way to deal with start order in any reasonable way.
> Maven is uncooperative about letting you add plugin specific bits of info to
> dependencies.
We have the same issue with the Maven Launchpad Plugin in Sling (we add the
bundle start levels). We falled back to have a special bundle list formatted
along the lines of the regular maven dependencies and injecting the listed
bundles into the regular maven dependency list at project configuration time.
Regards
Felix
> In the karaf-maven-plugin feature generation I made it so you can specify a
> single start order for a feature, but I don't think this works for subsystems
> since karaf features are just sets of bundles started in with the other
> bundles whereas IIUC in a subsystem the start order is for that subsystem.
>
> On the other hand I think I saw some discussion recently on the maven list
> about perhaps allowing non-inheritable extra attrtibutes on dependencies.
> Since for subsystems we almost certainly don't want to follow transitive
> dependencies (using obr instead) this might work (if I didn't make it up).
>
> Let me know if you start looking at this so we don't duplicate effort.
>
> thanks
> david jencks
>
> On Jul 1, 2012, at 1:06 PM, David Bosschaert wrote:
>
>> Hi all,
>>
>> I've playing with the current subsystems implementation and thanks to
>> John Ross fixing some bugs I've been able to get a subsystem with the
>> CXF-DOSGi functionality working :)
>>
>> However, I've been thinking what the best way is to create a subsystem
>> in maven... My current impl has a few issues and maybe others have
>> some ideas how to improve:
>> 1. My SUBSYSTEM.MF [1] needs to have the OSGi variant of the
>> ${project.version} so it needs to translate 1.4.0-SNAPSHOT into
>> 1.4.0.SNAPSHOT. Anyone know a way to do this?
>> 2. The Subsystem-Content lists all the dependencies of the project.
>> However, because some of the bundles for this subsystem weren't
>> developed with OSGi in mind, the start ordering is significant. I
>> don't know of an easy way to generate this so currently it's hardcoded
>> and hence duplicated. Also note that fragments obviously don't have a
>> start-order.
>> 3. In [2] I'm using the maven-assembly plugin to get all the
>> dependencies zipped up. However I need to have the .esa extension
>> whereas this plugin insists on .zip. I'm currently achieving that by
>> copying the .zip file to an .esa and then attaching the .esa to the
>> project but that's kinda wasteful as it puts both the .zip and the
>> .esa in the maven repo (and they're a couple of megs each).
>>
>> 2 above might be a bit hard to achieve in the short term, but 1 and 3
>> might be possible given the right amount of maven-fu?
>> I guess it would really be nice if there was a maven plugin that could
>> do all this ;)
>>
>> Cheers,
>>
>> David
>>
>> [1]
>> http://svn.apache.org/repos/asf/cxf/dosgi/trunk/distribution/subsystem/src/main/resources/OSGI-INF/SUBSYSTEM.MF
>> [2]
>> http://svn.apache.org/repos/asf/cxf/dosgi/trunk/distribution/subsystem/pom.xml
>