
fork of the popular jsch library
Voir le README original
Comme je l'ai expliqué dans un article de blog, les principaux points sont :
Pas beaucoup. Consultez le code d'exemple dans le dossier examples. Et il existe quelques pages wiki, par exemple Jsch-Configuration et Jsch-Logging.
Jusqu'à 0.2.26, la gestion des versions suivait le schéma du jsch d'origine ; à partir de 2.27.0, nous sommes passés au versionnement sémantique, indiquant que l'API de la bibliothèque est stable et utilisée en production.
com.jcraft:jschAssurez-vous de n'avoir qu'une seule dépendance jsch sur votre classpath. Par exemple, vous pouvez vérifier la sortie de mvn dependency:tree.
remplacez
<dependency>
<groupId>com.jcraft</groupId>
<artifactId>jsch</artifactId>
<version>0.1.55</version>
</dependency>
par
<dependency>
<groupId>com.github.mwiede</groupId>
<artifactId>jsch</artifactId>
<version>2.28.0</version>
</dependency>
Lorsque vous avez un artefact foo:bar, qui contient com.jcraft:jsch comme dépendance transitive, vous devez ajouter com.github.mwiede:jsch comme autre dépendance et exclure celle 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>
Ajout : Vous pouvez également exclure com.jcraft:jsch.agentproxy.jsch, com.jcraft:jsch.agentproxy.core ou com.jcraft:jsch.agentproxy.pageant, car ces modules ont été intégrés dans ce fork (voir les notes de version de 0.1.66).
jsch.server_host_key + jsch.client_pubkey.JSch.setConfig("server_host_key", JSch.getConfig("server_host_key") + ",ssh-rsa") + JSch.setConfig("PubkeyAcceptedAlgorithms", JSch.getConfig("PubkeyAcceptedAlgorithms") + ",ssh-rsa").session.setConfig("server_host_key", session.getConfig("server_host_key") + ",ssh-rsa") + session.setConfig("PubkeyAcceptedAlgorithms", session.getConfig("PubkeyAcceptedAlgorithms") + ",ssh-rsa").jsch.kex
JSch.setConfig("kex", "...")jsch.server_host_key
JSch.setConfig("server_host_key", "...")jsch.prefer_known_host_key_types
JSch.setConfig("prefer_known_host_key_types", "...")jsch.enable_server_sig_algs
JSch.setConfig("enable_server_sig_algs", "...")jsch.cipher
Voir ChangeLog.md
OpenSSHConfig.JSch.setConfig("cipher.s2c", "...") + JSch.setConfig("cipher.c2s", "...")jsch.mac
JSch.setConfig("mac.s2c", "...") + JSch.setConfig("mac.c2s", "...")jsch.compression
JSch.setConfig("compression.s2c", "...") + JSch.setConfig("compression.c2s", "...")jsch.lang
JSch.setConfig("lang.s2c", "...") + JSch.setConfig("lang.c2s", "...")jsch.dhgex_min
JSch.setConfig("dhgex_min", "...")jsch.dhgex_max
JSch.setConfig("dhgex_max", "...")jsch.dhgex_preferred
JSch.setConfig("dhgex_preferred", "...")jsch.compression_level
JSch.setConfig("compression_level", "...")jsch.preferred_authentications
JSch.setConfig("PreferredAuthentications", "...")jsch.client_pubkey
JSch.setConfig("PubkeyAcceptedAlgorithms", "...")jsch.check_ciphers
JSch.setConfig("CheckCiphers", "...")jsch.check_macs
JSch.setConfig("CheckMacs", "...")jsch.check_kexes
JSch.setConfig("CheckKexes", "...")jsch.check_signatures
JSch.setConfig("CheckSignatures", "...")jsch.fingerprint_hash
JSch.setConfig("FingerprintHash", "...")jsch.max_auth_tries
JSch.setConfig("MaxAuthTries", "...")