我正在使用JSch的ChannelExec
在远程服务器上运行命令。我的脚本通常需要15分钟以上才能运行。但是15分钟后通道将关闭,退出状态保持等于-1。
我什至试图等到通道关闭。但是channelExec.isClosed()
在15分钟后返回true
。
我认为我需要在某处设置超时配置,但我无法弄清楚。设置Session.setTimeout()
不起作用。
最佳答案
一定的最大时间限制后,通道也会关闭。
要无限期保持通道打开,请使用channel.connect(0)。
即使规范说它可以无限期运行,但即使有上限,否则操作系统本身也会拖延该过程