Details
-
Type:
Improvement
-
Status:
Resolved
-
Priority:
Trivial
-
Resolution: Fixed
-
Affects Version/s: 2.0.0, 2.0.1
-
Fix Version/s: 2.1
-
Component/s: None
-
Labels:None
-
Number of attachments :
Description
The OSGi Manifest for the different jackson projects show some discrepancies with each other and the usual OSGi conventions.
1- The Bundle-SymbolicName for jackson-annotations and jackson-jaxrs-json-provider have changed. Going from only the project name to being prefixed by com.fasterxml.jackson. This shouldn't affect anyone that follows the OSGi recommendation of using Import-Package instead of Require-Bundle, but we use Require-Bundle and therefore had to recompile my OSGi projects.
2- The Bundle-SymbolicName of jackson-core and jackson-databind does not follow the same naming convention as those other 2 projects. This is probably due to the fact that they don't use the FasterXml parent pom, which defines a bunch of things, including OSGi definitions.
3- The projects don't follow the OSGi naming convention. Usually the Bundle-SymbolicName is the same as the top-level java package (I take Eclipse as an example): c.f.j.annotations, c.f.j.core, c.f.j.databind, c.f.j.jaxrs.json. [1]
3- None of the Manifest have a Bundle-RequiredExecutionEnvironment declaration. I think it should at least include the J2SE-1.5 declaration, but JavaSE-1.6 and JavaSE-1.7 are also a good idea to include.
I have not looked at the other projects since these are the only ones I use.
Activity
| Field | Original Value | New Value |
|---|---|---|
| Status | Open [ 1 ] | In Progress [ 3 ] |
| Status | In Progress [ 3 ] | Resolved [ 5 ] |
| Fix Version/s | 2.1 [ 18536 ] | |
| Resolution | Fixed [ 1 ] |
I should have known better than allow parent pom upgrades before 2.1. :-/
Apologies for the problems; while some were present in 1.x, not all were. For exmaple I recall Bundle-RequiredExecutionEnvironment being defined with 1.9 (since I saw warnings when I tried to add multiple variants back then).
One question: I know that you may not be able to use 2.0.0 due JDK 1.5/1.6 problems; but I would think it actually used older non-prefixed names. So one possibility is for 2.0.2 to revert back to original 2.0.0 names. We could then make wholesale change (if deemed sensible) for 2.1.
Let's take this discussion to Jackson dev list, so Simone T can also participate.
I think solution should be coordinated; and should improve overall OSGi support.