文档章节

用jsch.jar session.connect() 登录sftp服务器上报错 :End of IO Stream Read

一个破名想半年
 一个破名想半年
发布于 2017/06/29 15:07
字数 304
阅读 7676
收藏 1

1.概述

    最近做了一个从sftp服务器上下载文件的java项目。用到了jsch-0.1.54.jar

2.过程

    本机搭建了一个sftp服务器环境测试没问题。centos6.8+ssh opensever

    代码打到客户测试环境,运行报错:

com.jcraft.jsch.JSchException: Session.connect: java.io.IOException: End of IO Stream Read

3.解决

1)经过多次测试,排查问题。推测是环境ssh版本问题,由于客户环境不可见,无法获得sftp服务器ssh的版本。

2)上网搜寻这个错误,发现国内遇到这个问题不多。国外stackoverflow网站上有贴出一样的报错,但是引用的jar版本不同,并且答案指出升级到jsch-0.1.54问题就不存在了。

    继续百度,寻找关键字信息,逐渐追到jsch的源码里面,IO异常显示是keyexchange(ssh DH私钥交换)读取有误(文件读取流到底)。

3)小心测试,解决问题。

在sftp登录时,设置完ip,port,user和pwd之后

再设置传输的DH私钥内容:

session.setConfig("kex",“diffie-hellman-group1-sha1”);

相关内容地址:

http://blog.csdn.net/wchrt/article/details/45752933

© 著作权归作者所有

一个破名想半年
粉丝 0
博文 16
码字总数 9936
作品 0
青浦
私信 提问
Eclipse for Git提交出错

当我在修改了代码准备提交的时候 点击commit and push按钮,报以下错误:Session.connect: java.io.IOException: End of IO Stream Read 之前的项目我是用git命令clone的,没有问题。我现在尝...

799310042
2017/09/08
732
0
使用jsch的时候去拿session.connect卡住,造成cpu占用过高

使用jsch的时候去拿session.connect卡住,造成cpu占用过高,程序有12个job同时去拿不同sftp服务器连接,平时都是没有问题的!在周末服务器3点重启之后job会在6点启动,偶尔会出去拿session.c...

zc369
2016/04/08
703
0
使用Jsch实现文件上传

使用Jsch可以很容易地实现sftp文件上传。具体代码如下: import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.......

kangyunqiang
2009/04/12
0
0
Java创建sftp账户并设置秘钥

sftp服务器配置 点击此处 依赖 ssh2工具类 service

tianshl
2018/06/28
292
0
使用Jsch链接SFTP服务器产生的问题,找了很多答案都说是jce问题

jdk:1.6 u45 系统:2008 r2 sftp系统:redhat 6.5 (OpenSSH_7.1) 错误信息: com.jcraft.jsch.JSchException: Session.connect: java.security.InvalidAlgorithmParameterException: Prim......

龍煜
2016/07/11
6.3K
2

没有更多内容

加载失败,请刷新页面

加载更多

32位与64位Linux系统下各类型长度对比

64 位的优点:64 位的应用程序可以直接访问 4EB 的内存和文件大小最大达到4 EB(2 的 63 次幂);可以访问大型数据库。本文介绍的是64位下C语言开发程序注意事项。 1. 32 位和 64 位C数据类型...

mskk
13分钟前
4
0
Vue 实现点击空白处隐藏某节点(三种方式:指令、普通、遮罩)

在项目中往往会有这样的需求: 弹出框(或Popover)在 show 后,点击空白处可以将其 hide。 针对此需求,整理了三种实现方式,大家按实际情况选择。 当然,我们做项目肯定会用到 UI 框架,常...

张兴华ZHero
19分钟前
3
0
SpringBoot激活profiles你知道几种方式?

多环境是最常见的配置隔离方式之一,可以根据不同的运行环境提供不同的配置信息来应对不同的业务场景,在SpringBoot内支持了多种配置隔离的方式,可以激活单个或者多个配置文件。 激活Profi...

恒宇少年
21分钟前
5
0
PDF修改文字的方法有哪些?怎么修改PDF文件中的文字

PDF修改文字一直以来都是一个难以解决的问题,很多的办公族在办公的时候会有修改PDF文件中的文字的需要,可是PDF文件一般是不能进行编辑和修改的,难道就没有什么办法解决这个问题了嘛?不要...

趣味办公社
24分钟前
3
0
企业组织中采用服务网格的挑战

作者:Christian Posta 译者:罗广明 原文:https://blog.christianposta.com/challenges-of-adopting-service-mesh-in-enterprise-organizations/ 编者按 本文作者介绍了企业组织采用服务网...

jimmysong
34分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部