Volver a actualizaciones
Nuevo releaseAug 26, 2026

jsch jsch-2.28.7

fork de la popular biblioteca jsch

Compartir

Fork de JSch-0.1.55

Ver el README original

GitHub release Maven Central Java CI with Maven

¿Por qué deberías usar esta librería?

Como expliqué en un artículo de blog, los puntos principales son:

  • OpenSSH ha deshabilitado ssh-rsa en la versión 8.8 por defecto y necesitas una librería que admita rsa-sha2-256 y rsa-sha2-512.
  • Reemplazo directo: solo cambia las coordenadas de dependencia y ya estás listo.
  • No hay mantenimiento activo de JSch en SourceForge.
  • Se mantiene al día con las características de OpenJDK, por lo que no se necesitan dependencias adicionales.

¿Hay documentación?

No mucha. Revisa el código de ejemplo en la carpeta examples. Y hay algunas páginas wiki, es decir, Jsch-Configuration y Jsch-Logging.

Versionado

Hasta 0.2.26, el versionado seguía el esquema original de jsch; a partir de 2.27.0, cambiamos al versionado semántico, lo que expresa que la API de la librería es estable y se usa en producción.

Cómo usar esta librería como reemplazo de com.jcraft:jsch

Asegúrate de tener solo una dependencia de jsch en tu classpath. Por ejemplo, puedes comprobar la salida de mvn dependency:tree.

reemplazando una dependencia directa de Maven

reemplaza

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

con

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

reemplazando jsch como dependencia transitiva de Maven

Cuando tienes un artefacto foo:bar, que contiene com.jcraft:jsch como dependencia transitiva, necesitas añadir com.github.mwiede:jsch como otra dependencia y excluir la de jcraft:

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

Adición: También puedes excluir cualquiera de com.jcraft:jsch.agentproxy.jsch, com.jcraft:jsch.agentproxy.core o com.jcraft:jsch.agentproxy.pageant, porque estos módulos se integraron en este fork (consulta las notas de la versión 0.1.66).

Categorías