Summary :
Run Code Online (Sandbox Code Playgroud)
我们看到下面的异常hudson.remoting.ChannelClosedException:通道已经关闭引起:java.net.SocketException:连接重置有关如何修复它的任何建议?下面的完整例外文本
[21-11-2013 14:29:54] FATAL: channel is already closed
[21-11-2013 14:29:54] hudson.remoting.ChannelClosedException: channel is already closed
[21-11-2013 14:29:54] at hudson.remoting.Channel.send(Channel.java:516)
[21-11-2013 14:29:54] at hudson.remoting.Request.call(Request.java:129)
[21-11-2013 14:29:54] at hudson.remoting.Channel.call(Channel.java:714)
[21-11-2013 14:29:54] at hudson.Launcher$RemoteLauncher.kill(Launcher.java:887)
[21-11-2013 14:29:54] at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:609)
[21-11-2013 14:29:54] at com.tikal.jenkins.plugins.multijob.MultiJobBuild$MultiJobRunnerImpl.run(MultiJobBuild.java:67)
[21-11-2013 14:29:54] at hudson.model.Run.execute(Run.java:1603)
[21-11-2013 14:29:54] at hudson.model.Run.run(Run.java:1549)
[21-11-2013 14:29:54] at com.tikal.jenkins.plugins.multijob.MultiJobBuild.run(MultiJobBuild.java:60)
[21-11-2013 14:29:54] at hudson.model.ResourceController.execute(ResourceController.java:88)
[21-11-2013 14:29:54] at hudson.model.Executor.run(Executor.java:247)
[21-11-2013 14:29:54] Caused by: java.net.SocketException: Connection reset
[21-11-2013 14:29:54] at java.net.SocketInputStream.read(Unknown Source)
[21-11-2013 14:29:54] at java.net.SocketInputStream.read(Unknown Source)
[21-11-2013 14:29:54] at java.io.BufferedInputStream.fill(Unknown Source)
[21-11-2013 14:29:54] at java.io.BufferedInputStream.read(Unknown Source)
[21-11-2013 14:29:54] at hudson.remoting.FlightRecorderInputStream.read(FlightRecorderInputStream.java:77)
[21-11-2013 14:29:54] at java.io.ObjectInputStream$PeekInputStream.peek(Unknown Source)
[21-11-2013 14:29:54] at java.io.ObjectInputStream$BlockDataInputStream.peek(Unknown Source)
[21-11-2013 14:29:54] at java.io.ObjectInputStream$BlockDataInputStream.peekByte(Unknown Source)
[21-11-2013 14:29:54] at java.io.ObjectInputStream.readObject0(Unknown Source)
[21-11-2013 14:29:54] at java.io.ObjectInputStream.readObject(Unknown Source)
[21-11-2013 14:29:54] at hudson.remoting.Command.readFrom(Command.java:92)
[21-11-2013 14:29:54] at hudson.remoting.ClassicCommandTransport.read(ClassicCommandTransport.java:71)
Run Code Online (Sandbox Code Playgroud)
您收到此错误的原因有两个:
Jenkins 第一次尝试在远程节点上进行 SSH 时,服务器会提示用户是否要将 SHH 密钥添加到其已知密钥中。通常,在命令提示符下,您只需回答“是”并继续。但詹金斯会卡在这条线上。然后连接尝试将失败。解决方案:使用命令提示符从 jenkins 服务器手动连接到远程节点一次。然后您可以手动回答“是”。詹金斯未来的所有尝试都会起作用。
java 代理因不明原因在远程节点上停止工作。解决办法:重启java代理。足够简单......但如果您不知道如何重新启动它,也许就不行了!我发现一个简单的方法是更改节点配置上的超时值(连接超时以秒为单位)。当保存新值时,您实际上将重新启动java代理!
据我所知,当构建在从属 PC 上运行并且客户端停止时,可能会出现该错误...如果不是主从问题,请参阅 jenkins 的完整日志(您可以在 Jenkins 安装目录中找到它)并查看导致问题的原因(可能是堆问题,或者我不知道导致问题的原因)。不管怎样,重启 Jenkins 就可以解决!
| 归档时间: |
|
| 查看次数: |
9022 次 |
| 最近记录: |