[
https://issues.apache.org/jira/browse/JENA-1139?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15144937#comment-15144937
]
Andy Seaborne commented on JENA-1139:
-------------------------------------
As I remember it, the jena-osgi artifact is a combined artifact which includes
the correct version dependencies all in one so no classloader boundary version
issues.
If the OSGi users and real potential users (will definitely use bundled jena,
not just thinking about it) can agree on what they want, they can then make a
case.
I would have thought the baseline is no change to non-OSGi use, no increase in
users@ emails. That has to be proven not just claimed. It's a different design
to have the Jena jars with the OSGi details.
Switching to package type bundle seems like a big step. All non-OSGi users are
going to want to know that the all existing POMs are not now broken.
(Sesame runs an ant task to generate their services file for their OSGi
artifact.)
> jena-osgi does not initialize all modules
> -----------------------------------------
>
> Key: JENA-1139
> URL: https://issues.apache.org/jira/browse/JENA-1139
> Project: Apache Jena
> Issue Type: Bug
> Components: OSGi
> Affects Versions: Jena 3.0.1
> Reporter: Stian Soiland-Reyes
> Assignee: Andy Seaborne
> Fix For: Jena 3.1.0
>
> Attachments: Screen Shot 2016-02-11 at 10.02.50.png
>
>
> As discovered in TAVERNA-892 the jena-osgi of Jena 3.0.1
> seems to have not merged correctly
> META-INF/services/org.apache.jena.system.JenaSubsystemLifecycle
> which breaks the new Jena initialization - only TDB is initialized - but TDB
> depends on ARQ already being initialized (to get its context).
> {code}
> stain@biggie:~/.m2/repository/org/apache/jena/jena-osgi$ unzip
> ./3.0.1/jena-osgi-3.0.1.jar
> META-INF/services/org.apache.jena.system.JenaSubsystemLifecycle
> Archive: ./3.0.1/jena-osgi-3.0.1.jar
> inflating: META-INF/services/org.apache.jena.system.JenaSubsystemLifecycle
> stain@biggie:~/.m2/repository/org/apache/jena/jena-osgi$ cat
> META-INF/services/org.apache.jena.system.JenaSubsystemLifecycle
> org.apache.jena.tdb.sys.InitTDB
> {code}
> So basically only the last JenaSubsystemLifecycle file survives when shading
> jena-core, jena-arq, jena-tdb, jena-iri with Embed-Dependency and inline=true.
> The equivalent of the Maven Shade plugin's ServicesResourceTransformer would
> be able to merge these.
> https://maven.apache.org/plugins/maven-shade-plugin/examples/resource-transformers.html#ServicesResourceTransformer
> but I'm not sure how this can be done with the bundle plugin. I guess it
> could be overridden with its own src/main/resources/META-INF/services/ file
> in jena-osgi as well - but then it needs maintenance.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)