jclouders-
While doing a license audit on Apache Brooklyn -- which uses Apache
jclouds -- @frontiertown (cc'd) discovered an LGPL dependency coming
from jclouds: *net.java.dev.jna:jna* -- see [1] and [2] for the license
of this. (I think the same may be true for the one other in the jna
family also.)
It is pulled in by com.jcraft:jsch.agentproxy.connector-factory used by
jclouds-sshj. See [3] for a discussion within jcraft on the use of
LGPL. The Maven dependency:tree excerpt included below [4].
I don't think it's actually used (looks like you need to jump through
hoops to activate a different agentproxy implementation). And it is easy
enough to exclude this with code such as [5] if that's the case. That
is working for us currently. (Note jna is pulled in by pageant as well
as usocket-jna).
The other option is, it looks like from v4 onwards JNA is dual-licensed
under Apache, so maybe the version could be bumped via a patch to
com.jcraft.jsch...
But we are well getting into territory which requires analysis from
someone who knows the stuff better than me!
Best
Alex
[1] https://github.com/twall/jna
[2] http://mvnrepository.com/artifact/net.java.dev.jna/jna/3.4.0
[3] https://github.com/ymnk/jsch-agent-proxy
[4] mvn dependency:tree excerpt
[INFO] +- org.apache.jclouds.driver:jclouds-sshj:jar:2.0.0-SNAPSHOT:test
[INFO] | +-
org.apache.jclouds.driver:jclouds-bouncycastle:jar:2.0.0-SNAPSHOT:test
[INFO] | | \- org.bouncycastle:bcprov-ext-jdk15on:jar:1.49:test
[INFO] | +- net.schmizz:sshj:jar:0.8.1:test
[INFO] | +- org.bouncycastle:bcpkix-jdk15on:jar:1.49:test
[INFO] | +- com.jcraft:jsch.agentproxy.sshj:jar:0.0.7:test
[INFO] | | \- com.jcraft:jsch.agentproxy.core:jar:0.0.7:test
[INFO] | \- com.jcraft:jsch.agentproxy.connector-factory:jar:0.0.7:test
[INFO] | +- com.jcraft:jsch.agentproxy.usocket-jna:jar:0.0.7:test
*[INFO] | | +- net.java.dev.jna:jna:jar:3.4.0:test**
**[INFO] | | \- net.java.dev.jna:platform:jar:3.4.0:test**
***[INFO] | +- com.jcraft:jsch.agentproxy.usocket-nc:jar:0.0.7:test
[INFO] | +- com.jcraft:jsch.agentproxy.sshagent:jar:0.0.7:test
[INFO] | \- com.jcraft:jsch.agentproxy.pageant:jar:0.0.7:test
[5] pom magic to exclude (adapt as appropriate to put into jclouds-sshj)
<dependency>
<groupId>org.apache.jclouds.driver</groupId>
<artifactId>jclouds-sshj</artifactId>
<exclusions>
<exclusion>
<groupId>com.jcraft</groupId>
<artifactId>jsch.agentproxy.usocket-jna</artifactId>
</exclusion>
<exclusion>
<groupId>com.jcraft</groupId>
<artifactId>jsch.agentproxy.pageant</artifactId>
</exclusion>
</exclusions>
</dependency>