Hi guys, A quick follow up on the work currently being done on ApacheDS around OSGI.
Göktürk is doing a really good job in moving ApacheDS code base towards OSGI. Unfortunately, at the moment, Studio is broken (code base still compiles but it can't be launched) due to the recent changes. The cause of this issue is a change in the way we name our OSGI bundles (the 'Bundle-SymbolicName' property in the 'MANIFEST.MF' file). When we moved the LDAP API (Shared) to OSGI a few months back with Alex, at first, we used a concatenation of the groupId and the artifactId: <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName> That generated for example the following bundle symbolic name: org.apache.directory.shared.shared-asn1-api We decided quickly to change the policy for two reasons: - get rid of the duplicated 'shared' keyword - follow the current naming policy of Apache Directory Studio (inherited from Eclipse) which does not use any '-' character (but a '.' instead). In the end, it gave the following bundle symbolic name for the same example: org.apache.directory.shared.asn1.api. Something that we thought was shorter, clearer and shared across both our projects (Studio and LDAP API). Recent modifications brought back the concatenation naming scheme and that's what has broken Studio. I currently have a fix in my workspace about that (which reverts the bundle symbolic name to what was previously used), but I'd rather have a common discussion about what naming scheme the community as a whole decides to use, before committing it. What's your take on this? Also, one other thing. In order to be able to run ApacheDS projects from the workspace inside a launched Eclipse instance (especially when running Studio within Eclipse), we need to have the 'MANIFEST.MF' file generated inside a 'META-INF' folder at the root of each ApacheDS module (this 'META-INF' folder being added to svn:ignore of course). This is what we had done when we moved the LDAP API (Shared) to OSGI a few months back with Alex, and it has been working very fine since then, especially the integration with Studio. So, all LDAP API modules are fine about that and I'd like to do the same thing for all ApacheDS modules. Is there any objection to that? Regards, Pierre-Arnaud