Github user acoburn commented on the issue:
https://github.com/apache/jena/pull/428
I built Jena with your change in #429 along with the changes from this PR,
and for some reason the `jena-osgi` module still wants to import the
`com.google.errorprone.annotations` and `org.checkerframework.checker` packages
-- unless, of course, they are explicitly excluded, as in this PR. So, unless
there is some other way to achieve this, I think it will be necessary to
explicitly exclude those guava-related transitive dependencies.
In the second commit, I removed the `xerces` feature. I also added the
`dependency="true"` flag to all of the dependencies. Background on the
`dependency="true"` attribute is available in the [Karaf
documentation](https://karaf.apache.org/manual/latest/provisioning).
I tested this in two ways. First, simply provisioning the `jena` feature in
Karaf 4.2.0 works via `feature:install jena`. I also was able to provision and
run a complete OSGi-based CXF application that makes use of Jena.
One further change that could be made to the `features.xml` file is to
remove the `jena_osgi_dependencies` feature, and instead put the content of
that directly into the `jena` feature definition. That would result in
`jena-osgi-features` making only a single feature available. That would
simplify the file a bit, but that change also isn't strictly necessary.
---