mwiede / jsch

fork of the popular jsch library
Other
662 stars 124 forks source link
java jsch openssh ssh ssh-client

Fork of JSch-0.1.55

See original README

GitHub release Maven Central Java CI with Maven

Why should you use this library?

As I explained in a blog post the main points are:

How to you use this library as a replacement for com.jcraft:jsch

Make sure, that you only have one jsch dependency on your classpath. For example you can check the output of mvn dependency:tree.

by replacing a direct maven dependency

replace

<dependency>
    <groupId>com.jcraft</groupId>
    <artifactId>jsch</artifactId>
    <version>0.1.55</version>
</dependency>

with

<dependency>
  <groupId>com.github.mwiede</groupId>
  <artifactId>jsch</artifactId>
  <version>0.2.18</version>
</dependency>

by replacing jsch as a transitive maven dependency

When you have an artifact foo:bar, which contains com.jcraft:jsch as a transitive dependency, you need to add com.github.mwiede:jsch as another dependency and exclude the jcraft one:

<dependency>
  <groupId>com.github.mwiede</groupId>
  <artifactId>jsch</artifactId>
  <version>0.2.18</version>
</dependency>
<dependency>
  <groupId>foo</groupId>
  <artifactId>bar</artifactId>
  <exclusions>
        <exclusion>  
          <groupId>com.jcraft</groupId>
          <artifactId>jsch</artifactId>
        </exclusion>
      </exclusions> 
</dependency>

Addition: You can further exclude any of com.jcraft:jsch.agentproxy.jsch, com.jcraft:jsch.agentproxy.core or com.jcraft:jsch.agentproxy.pageant, because these modules where integrated in this fork (see release notes of 0.1.66).

FAQ

Which is the minimum Java version required?

Changes since fork:

See ChangeLog.md