Hi,

I don’t see how it’s related to BoM: your missing requirement is at runtime, 
not build time. Maybe you change the maven-bundle-plugin version ?

Let me explain: the requirement is NOT a missing package, but a missing service 
(osgi.service; effective:=active).

Your bundle header contains a requirement (in the MANIFEST) like 
Require-Service.

If you use pax-logging-log4j2 (2.0.8 for instance), it provides this capability:

Provide-Capability: osgi.service;effective:=active;objectClass="org.os
 gi.service.log.LogService,org.osgi.service.log.LoggerFactory,org.ops4
 j.pax.logging.PaxLoggingService,org.osgi.service.cm.ManagedService";u
 ses="org.osgi.service.log"

A simple workaround is to say to and to not generate the Require-Service 
requirement (if you use scr it’s with norequirement option on -dsannotation).

You can also provide the capability in a feature (assuming you don’t use 
pax-logging-log4j2).

Regards
JB

> Le 8 avr. 2021 à 21:57, Steinar Bang <[email protected]> a écrit :
> 
> Update: I think there is something strange with the 4.3.1 BoM, because
> if I build with it, I get a problem with finding the 
> org.osgi.service.LogService:
> 
> Caused by: org.apache.felix.resolver.reason.ReasonException: Unable to 
> resolve no.priv.bang.authservice.users/1.13.0.SNAPSHOT: missing requirement 
> [no.priv.bang.authservice.users/1.13.0.SNAPSHOT] osgi.service; 
> effective:=active; filter:="(objectClass=org.osgi.service.log.LogService)"
>       at 
> org.apache.felix.resolver.Candidates$MissingRequirementError.toException(Candidates.java:1341)
>       ... 17 more
> 
> Which is strange because the LogService dependency doesn't come from the
> BoM, and besides, this is a service that should always be present.
> 
> Also, this error doesn't have any version constraints so it isn't that
> the correct version is available.
> 
> So I'm moving back to building with the 4.3.0 BoM.
> 

Reply via email to