I am using the bundle org.mongodb:mongodb-driver-core:jar:4.3.0 in an osgi env on an java11. and got this exception.
The bundle does not import the package javax/security/auth/login
at aQute.launcher.pre.EmbeddedLauncher.executeWithRunPath(EmbeddedLauncher.java:170)
at aQute.launcher.pre.EmbeddedLauncher.findAndExecute(EmbeddedLauncher.java:135)
at aQute.launcher.pre.EmbeddedLauncher.main(EmbeddedLauncher.java:52)
Caused by: java.lang.NoClassDefFoundError: javax/security/auth/login/LoginException
at com.mongodb.internal.connection.DefaultAuthenticator.getAuthenticatorForIsMaster(DefaultAuthenticator.java:102)
at com.mongodb.internal.connection.DefaultAuthenticator.createSpeculativeAuthenticateCommand(DefaultAuthenticator.java:76)
at com.mongodb.internal.connection.InternalStreamConnectionInitializer.createIsMasterCommand(InternalStreamConnectionInitializer.java:181)
at com.mongodb.internal.connection.InternalStreamConnectionInitializer.initializeConnectionDescription(InternalStreamConnectionInitializer.java:125)
at com.mongodb.internal.connection.InternalStreamConnectionInitializer.startHandshake(InternalStreamConnectionInitializer.java:71)
at com.mongodb.internal.connection.InternalStreamConnection.open(InternalStreamConnection.java:167)
... 127 more
Caused by: java.lang.ClassNotFoundException: javax.security.auth.login.LoginException not found by org.mongodb.driver-core [43]
at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1585)
at org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:79)
at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1970)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519)
then looking into the gradle.build
You may should import everything using an * and then define everything that is optional (;resolution:=optional). and if you do not want to import use !
Import-Package:
!package.to.not.import
com.mongodb.crypt.capi.*;resolution:=optional
* //add this to import everything and not forget something
... 133 more