2014-02-28 101 views
2

我升级了我的Jenkins版本,之后我失去了SSH连接到我的从节点。 启动我遇到下面的错误之后的密钥验证奴:Jenkin在升级Jenkins后未能启动通过SSH连接的从节点

[02/28/14 14:20:02] [SSH] Checking java version of java 
Couldn't figure out the Java version of java 
bash: java: command not found 

[02/28/14 14:20:02] [SSH] Checking java version of /usr/bin/java 
Couldn't figure out the Java version of /usr/bin/java 
bash: /usr/bin/java: No such file or directory 

[02/28/14 14:20:02] [SSH] Checking java version of /usr/java/default/bin/java 
Couldn't figure out the Java version of /usr/java/default/bin/java 
bash: /usr/java/default/bin/java: No such file or directory 

[02/28/14 14:20:02] [SSH] Checking java version of /usr/java/latest/bin/java 
Couldn't figure out the Java version of /usr/java/latest/bin/java 
bash: /usr/java/latest/bin/java: No such file or directory 

[02/28/14 14:20:02] [SSH] Checking java version of /usr/local/bin/java 
Couldn't figure out the Java version of /usr/local/bin/java 
bash: /usr/local/bin/java: No such file or directory 

[02/28/14 14:20:02] [SSH] Checking java version of /usr/local/java/bin/java 
Couldn't figure out the Java version of /usr/local/java/bin/java 
bash: /usr/local/java/bin/java: No such file or directory 

[02/28/14 14:20:02] [SSH] Checking java version of   /users/mdspadm/tools/hudson_tmp/jdk/bin/java 
Couldn't figure out the Java version of /users/mdspadm/tools/hudson_tmp/jdk/bin/java 
bash: /users/mdspadm/tools/hudson_tmp/jdk/bin/java: No such file or directory 

[02/28/14 14:20:03] [SSH] Checking java version of  /users/apache/tools/hudson/usr/lib/jvm/jre-1.5.0-ibm//bin/java 
[02/28/14 14:20:03] [SSH] /users/apache/tools/hudson/usr/lib/jvm/jre-1.5.0-ibm//bin/java -version returned 1.5.0. 
[02/28/14 14:20:03] [SSH] Starting sftp client. 
[02/28/14 14:20:03] [SSH] Copying latest slave.jar... 
[02/28/14 14:20:04] [SSH] Copied 346,845 bytes. 
Expanded the channel window size to 4MB 
[02/28/14 14:20:04] [SSH] Starting slave process: cd "https://stackoverflow.com/users/mdspadm/tools/hudson_tmp" && /users/apache/tools/hudson/usr/lib/jvm/jre-1.5.0-ibm//bin/java -jar slave.jar 
<===[JENKINS REMOTING CAPACITY]===>channel started 
java.io.IOException: Remote call on tunnel_mspvq330 failed 
at hudson.remoting.Channel.call(Channel.java:731) 
at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:449) 
at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:345) 
at hudson.plugins.sshslaves.SSHLauncher.startSlave(SSHLauncher.java:812) 
at hudson.plugins.sshslaves.SSHLauncher.launch(SSHLauncher.java:598) 
at hudson.slaves.SlaveComputer$1.call(SlaveComputer.java:228) 
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) 
at java.util.concurrent.FutureTask.run(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
at java.lang.Thread.run(Unknown Source) 
Caused by: java.lang.ClassFormatError: Failed to load 

这是一个Java问题,不过我升级前我目前的配置是OK。 任何想法如何解决这个请。

更新: 开始詹金斯1.608 +詹金斯转移到Java7;由于jenkins ssh-slave插件仍尝试使用较低版本的Java进行连接,因此已断开通过SSH启动从节点的连接。

参考文献:http://jenkins-ci.org/content/good-bye-java6

回答

2

如果你已经从一个很老的版本,我会更新推荐的Java升级詹金斯,

而且另一个问题也许是系统/为Java bin路径Envronment变量缺失或不正确?

Java还在其最新更新中引入了新的安全功能,因此请注意可能需要的任何额外身份验证。

而且我还发现this。它的老,但它可以帮助

编辑

在从@shahjapan评论下面我已经更新了这个答案也包含链接到自己的页面HERE

+1

我看到很多面临同样的问题和人将jenkins版本恢复到原来的版本,主要缺点是由于jenkins强行迁移到Java7来启动slave,感谢分享解决方案;我已经记录了帮助其他人的情况,请访问此处以解决问题的详细步骤:http://goo.gl/tZvqI2 – shahjapan