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