Guillaume Nodet wrote: > I don't have much knowledge of DS really, but in order to make things > run smoothly in OSGi, the first step is obviously to turn those into > OSGi bundles. > Karaf comes later if you want to use it as your runtime container > instead of using your own org.apache.directory.server.UberjarMain + > everything that Karaf provide. > > Turning ApacheDS jars into OSGi bundles should be relatively > straightforward if there is no shared packages, which means each jar > contain a set of packages, but those are different (you can't find > classes in the same package in different jars). This would be the main > problem (though there are some ways to still do that in OSGi).
Unfortunately, that's the case. > A first step should be easy and mostly consist in: > * defining a set of properties in the parent pom (such as the > camel.osgi.* in https://svn.apache.org/repos/asf/camel/trunk/parent/pom.xml) > * change the packaging of all jars to bundle, and define the > properties that need to be overriden (usually the exported packages as > in http://svn.apache.org/repos/asf/camel/trunk/components/camel-csv/pom.xml) > It should be easy but will certainly need to be refined over the time. It would be great if all our artifacts (ApacheDS including shared and the LDAP API) would be OSGi bundles. Because then we could install them into Studio as bundles. Atm we have a "jars" bundle that includes all needed libraries (including shared-ldap) and exports all packages, however this is a bad workaround. Kind Regards, Stefan