【问题标题】:Jenkins Build error java.lang.ClassNotFoundException: hudson.remoting.LauncherJenkins 构建错误 java.lang.ClassNotFoundException: hudson.remoting.Launcher
【发布时间】:2012-07-19 08:02:49
【问题描述】:

我正在尝试将 jenkins 与 svn 集成。我已经配置了maven_home、java_home(java 1.5 update 22)。我正在使用詹金斯版本 1.459 。我的一位同事使用 svn 成功配置了 jenkins。但是由于现在我们使用的是不同的分支,所以我想添加一个新工作,以便它从新分支中检出并持续集成项目。詹金斯在远程 linux 机器上运行,我使用 vpn 连接到服务器并设置东西。我错过了什么。

Modules changed, recalculating dependency graph
[workspace] $ /usr/lib/jvm/jdk1.5.0_22/bin/java -cp /home/vimukthi/.jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-agent-1.2.jar:/home/vimukthi/.jenkins/tools/Maven_3.0.3/boot/plexus-classworlds-2.4.jar org.jvnet.hudson.maven3.agent.Maven3Main /home/vimukthi/.jenkins/tools/Maven_3.0.3 /tmp/Jetty_0_0_0_0_2080_jenkins.war__jenkins__.wq5y0j/webinf/WEB-INF/lib/remoting-2.13.jar /home/vimukthi/.jenkins/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-1.2.jar 45339

Exception in thread "main" java.lang.ClassNotFoundException: hudson.remoting.Launcher
    at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
    at org.jvnet.hudson.maven3.agent.Maven3Main.main(Maven3Main.java:130)
    at org.jvnet.hudson.maven3.agent.Maven3Main.main(Maven3Main.java:63)
ERROR: Failed to parse POMs
java.net.SocketException: Connection reset
    at java.net.SocketInputStream.read(SocketInputStream.java:168)
    at java.io.FilterInputStream.read(FilterInputStream.java:116)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
    at hudson.remoting.ClassicCommandTransport.create(ClassicCommandTransport.java:98)
    at hudson.remoting.Channel.<init>(Channel.java:373)
    at hudson.remoting.Channel.<init>(Channel.java:369)
    at hudson.remoting.Channel.<init>(Channel.java:330)
    at hudson.remoting.Channel.<init>(Channel.java:326)
    at hudson.remoting.Channel.<init>(Channel.java:322)
    at hudson.slaves.Channels$1.<init>(Channels.java:71)
    at hudson.slaves.Channels.forProcess(Channels.java:71)
    at hudson.maven.AbstractMavenProcessFactory.newProcess(AbstractMavenProcessFactory.java:237)
    at hudson.maven.ProcessCache.get(ProcessCache.java:231)
    at hudson.maven.MavenModuleSetBuild$RunnerImpl.doRun(MavenModuleSetBuild.java:706)
    at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:475)
    at hudson.model.Run.run(Run.java:1413)
    at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:479)
    at hudson.model.ResourceController.execute(ResourceController.java:88)
    at hudson.model.Executor.run(Executor.java:238)
Sending e-mails to: testjenkins@gmail.com
Finished: FAILURE

【问题讨论】:

  • 我遇到了同样的问题。我有一个 Jenkins 主从架构。所有 Linux 机器。这个问题目前经常发生,但只在其中一台机器上发生
  • jenkins 1.480.3 我也有同样的问题。你解决了吗?

标签: java continuous-integration hudson jenkins jenkins-plugins


【解决方案1】:

看来我设法解决了这个问题。断开和重新连接从站只能暂时解决它。但是我所做的是,我改变了主从运行的java。现在我的slave和master使用完全相同版本的java(6u41 32bit)运行,大约3周我们没有遇到这种问题。

【讨论】:

  • 这里也一样。使从站脱机,断开从站,重新连接并启动它修复了 Jenkins 的 Maven 插件无法启动其“远程处理”守护进程的问题,22:46:04 [PROJECT_NAME] $ /usr/java/default/ bin/java -Xmx768m -cp /usr/local/jenkins/maven3-agent.jar:/usr/local/jenkins/tools/Maven/maven-3.0.3/boot/plexus-classworlds-2.4.jar org.jvnet。 hudson.maven3.agent.Maven3Main /usr/local/jenkins/tools/Maven/maven-3.0.3 /usr/local/jenkins/slave.jar /usr/local/jenkins/maven3-interceptor.jar 55522 22:46: 04 频道开始
  • 这里有同样的问题,更新到相同的JRE/JDK版本,问题消失了
【解决方案2】:

这个错误可以通过破坏从站的构建根目录中的库来重现。在这种情况下,重新连接从站可以解决问题,因为通过重新连接从站,詹金斯会复制所有必要的库等。

要查看此操作,请在重新连接时查看 jenkins 控制台,您将看到如下内容:

Slave.jar 版本:2.28

这是一个 Unix 从站

复制的maven-agent.jar

复制maven3-agent.jar 复制maven3-interceptor.jar

复制的maven-interceptor.jar

复制maven2.1-interceptor.jar 复制plexus-classworld.jar

复制了classworlds.jar

所以,发生了什么,所有的库都被 jenkins 重新同步了。这可以归结为 jenkins 中的一个错误(恕我直言)......理想情况下,奴隶应该对这类故障具有鲁棒性。

【讨论】:

  • 断开从属设备并重新连接解决了我的问题。
  • 同样,断开连接并重新连接似乎对我有用。
【解决方案3】:

我在我们的测试环境中多次看到这个问题,提供 slave.jar 解决了这个问题。

不幸的是,有一个工作在重建环境时只移动了 maven-agent* 而不是 slave.jar,我们曾经反复面对这个问题。

复制 slave.jar 解决了这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-10-06
    • 1970-01-01
    • 1970-01-01
    • 2013-05-19
    • 2017-10-10
    • 2013-03-26
    • 2016-05-26
    • 1970-01-01
    相关资源
    最近更新 更多