mina-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Markus Rathgeb (JIRA)" <j...@apache.org>
Subject [jira] [Created] (SSHD-717) wrong import-package directive
Date Thu, 24 Nov 2016 16:02:58 GMT
Markus Rathgeb created SSHD-717:
-----------------------------------

             Summary: wrong import-package directive
                 Key: SSHD-717
                 URL: https://issues.apache.org/jira/browse/SSHD-717
             Project: MINA SSHD
          Issue Type: Bug
    Affects Versions: 1.4.0
            Reporter: Markus Rathgeb


I have build a 1.4.0-SNAPSHOT using the Git sources myself.

The import package section of the manifest looks like this one (output taken from Karaf bundle:headers
command because its well formatted).

{noformat}
Import-Package = 
	javax.crypto,
	javax.crypto.interfaces,
	javax.crypto.spec,
	javax.management,
	javax.security.auth,
	javax.security.auth.callback,
	javax.security.auth.login,
	net.i2p.crypto.eddsa;resolution:=optional;version="[0.1,1)",
	net.i2p.crypto.eddsa.math;resolution:=optional,
	net.i2p.crypto.eddsa.spec;resolution:=optional;version="[0.1,1)",
	org.apache.mina.core.buffer;resolution:=optional;version="[2.0,3)",
	org.apache.mina.core.future;resolution:=optional;version="[2.0,3)",
	org.apache.mina.core.service;resolution:=optional;version="[2.0,3)",
	org.apache.mina.core.session;resolution:=optional;version="[2.0,3)",
	org.apache.mina.transport.socket;resolution:=optional;version="[2.0,3)",
	org.apache.mina.transport.socket.nio;resolution:=optional;version="[2.0,3)",
	org.apache.sshd.agent,
	org.apache.sshd.agent.common,
	org.apache.sshd.agent.local,
	org.apache.sshd.agent.unix,
	org.apache.sshd.client,
	org.apache.sshd.client.auth,
	org.apache.sshd.client.auth.hostbased,
	org.apache.sshd.client.auth.keyboard,
	org.apache.sshd.client.auth.password,
	org.apache.sshd.client.auth.pubkey,
	org.apache.sshd.client.channel,
	org.apache.sshd.client.channel.exit,
	org.apache.sshd.client.config.hosts,
	org.apache.sshd.client.config.keys,
	org.apache.sshd.client.future,
	org.apache.sshd.client.global,
	org.apache.sshd.client.kex,
	org.apache.sshd.client.keyverifier,
	org.apache.sshd.client.scp,
	org.apache.sshd.client.session,
	org.apache.sshd.client.session.forward,
	org.apache.sshd.client.simple,
	org.apache.sshd.client.subsystem,
	org.apache.sshd.client.subsystem.sftp,
	org.apache.sshd.client.subsystem.sftp.extensions,
	org.apache.sshd.client.subsystem.sftp.extensions.helpers,
	org.apache.sshd.client.subsystem.sftp.extensions.openssh,
	org.apache.sshd.client.subsystem.sftp.extensions.openssh.helpers,
	org.apache.sshd.common,
	org.apache.sshd.common.auth,
	org.apache.sshd.common.channel,
	org.apache.sshd.common.cipher,
	org.apache.sshd.common.compression,
	org.apache.sshd.common.config,
	org.apache.sshd.common.config.keys.loader,
	org.apache.sshd.common.digest,
	org.apache.sshd.common.file,
	org.apache.sshd.common.file.nativefs,
	org.apache.sshd.common.file.root,
	org.apache.sshd.common.file.util,
	org.apache.sshd.common.forward,
	org.apache.sshd.common.future,
	org.apache.sshd.common.global,
	org.apache.sshd.common.helpers,
	org.apache.sshd.common.io,
	org.apache.sshd.common.io.mina,
	org.apache.sshd.common.io.nio2,
	org.apache.sshd.common.kex.dh,
	org.apache.sshd.common.keyprovider,
	org.apache.sshd.common.mac,
	org.apache.sshd.common.random,
	org.apache.sshd.common.scp,
	org.apache.sshd.common.scp.helpers,
	org.apache.sshd.common.session,
	org.apache.sshd.common.session.helpers,
	org.apache.sshd.common.signature,
	org.apache.sshd.common.subsystem.sftp,
	org.apache.sshd.common.subsystem.sftp.extensions,
	org.apache.sshd.common.subsystem.sftp.extensions.openssh,
	org.apache.sshd.common.util,
	org.apache.sshd.common.util.closeable,
	org.apache.sshd.common.util.io,
	org.apache.sshd.common.util.logging,
	org.apache.sshd.common.util.net,
	org.apache.sshd.common.util.security,
	org.apache.sshd.common.util.security.bouncycastle,
	org.apache.sshd.common.util.threads,
	org.apache.sshd.server,
	org.apache.sshd.server.auth,
	org.apache.sshd.server.auth.gss,
	org.apache.sshd.server.auth.hostbased,
	org.apache.sshd.server.auth.keyboard,
	org.apache.sshd.server.auth.password,
	org.apache.sshd.server.auth.pubkey,
	org.apache.sshd.server.channel,
	org.apache.sshd.server.config.keys,
	org.apache.sshd.server.forward,
	org.apache.sshd.server.global,
	org.apache.sshd.server.kex,
	org.apache.sshd.server.keyprovider,
	org.apache.sshd.server.scp,
	org.apache.sshd.server.session,
	org.apache.sshd.server.shell,
	org.apache.sshd.server.subsystem,
	org.apache.sshd.server.subsystem.sftp,
	org.apache.sshd.server.x11,
	org.apache.tomcat.jni;resolution:=optional,
	org.bouncycastle.crypto.prng;resolution:=optional;version="[1.55,2)",
	org.bouncycastle.jce.provider;resolution:=optional;version="[1.55,2)",
	org.bouncycastle.openssl;resolution:=optional;version="[1.55,2)",
	org.bouncycastle.openssl.jcajce;resolution:=optional;version="[1.55,2)",
	org.ietf.jgss,
	org.slf4j;version="[1.7,2)"
{noformat}

Caused by the import of the packages it exports itself with missing version constraints, the
bundle could import this packages from another package that exports that one with an incomplete
version.

In my environment there are now two sshd bundles installed:
{noformat}
  1 | Active   |  20 | 0.14.0                | mvn:org.apache.sshd/sshd-core/0.14.0
128 | Active   |  80 | 1.4.0.SNAPSHOT        | mvn:org.apache.sshd/sshd-core/1.4.0-SNAPSHOT
{noformat}

As you can see the bundle 128 is using a package that is exported by 1, instead of using it
from itself:
{noformat}
> requirements 128
org.apache.sshd.core [128] requires:
------------------------------------
...
osgi.wiring.package; (osgi.wiring.package=org.apache.sshd.common.future) resolved by:
   osgi.wiring.package; org.apache.sshd.common.future 0.14.0 from org.apache.sshd.core [1]
...
{noformat}

This leads to e.g. this exception:
{noformat}
java.lang.NoClassDefFoundError: org/apache/sshd/common/future/VerifiableFuture
{noformat}




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message