2012-06-07 51 views
2

我想编写一个环境,以便能够构建我的项目并在集成服务器上运行我的测试。所以我安装了一个Jboss应用程序服务器7.1并将hudson.war部署到它。然后,我创建了一个项目来触发“mvn clean install”,当我构建它时,我有以下异常。Hudson + Jboss AS 7.1 + Maven 3项目构建错误

[INFO] Using bundled Maven 3 installation 
[INFO] Checking Maven 3 installation environment 
[workspace] $ /disk7/hudson_home/maven/slavebundle/bundled-maven/bin/mvn --help 
[INFO] Checking Maven 3 installation version 
[INFO] Detected Maven 3 installation version: 3.0.3 
[workspace] $ /disk7/hudson_home/maven/slavebundle/bundled-maven/bin/mvn clean install -V -B -Dmaven.ext.class.path=/disk7/hudson_home/maven/slavebundle/resources:/disk7/hudson_home/maven/slavebundle/lib/maven3-eventspy-3.0.jar:/disk7/jboss-as-7.1.0.Final/standalone/tmp/vfs/deploymentdf2a6dfa59ee3407/hudson-remoting-2.2.0.jar-407215e5de02980f/contents -Dhudson.eventspy.port=37183 -f pom.xml 
[DEBUG] Waiting for connection on port: 37183 
Apache Maven 3.0.3 (r1075438; 2011-02-28 19:31:09+0200) 
Maven home: /disk7/hudson_home/maven/slavebundle/bundled-maven 
Java version: 1.7.0_04, vendor: Oracle Corporation 
Java home: /usr/lib/jvm/jdk1.7.0_04/jre 
Default locale: en_US, platform encoding: UTF-8 
OS name: "linux", version: "3.2.0-24-generic", arch: "amd64", family: "unix" 
[ERROR] o.h.m.e.DelegatingEventSpy - Init failed 
java.lang.NoClassDefFoundError: hudson/remoting/Channel 
at org.hudsonci.maven.eventspy.common.RemotingClient.open(RemotingClient.java:103) ~[maven3-eventspy-runtime.jar:na] 
at org.hudsonci.maven.eventspy_30.RemotingEventSpy.openChannel(RemotingEventSpy.java:86) ~[maven3-eventspy-3.0.jar:na] 
at org.hudsonci.maven.eventspy_30.RemotingEventSpy.init(RemotingEventSpy.java:114) ~[maven3-eventspy-3.0.jar:na] 
at org.hudsonci.maven.eventspy_30.DelegatingEventSpy.init(DelegatingEventSpy.java:128) ~[maven3-eventspy-3.0.jar:na] 
at org.apache.maven.eventspy.internal.EventSpyDispatcher.init(EventSpyDispatcher.java:84) [maven-core-3.0.3.jar:3.0.3] 
at org.apache.maven.cli.MavenCli.container(MavenCli.java:403) [maven-embedder-3.0.3.jar:3.0.3] 
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:191) [maven-embedder-3.0.3.jar:3.0.3] 
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) [maven-embedder-3.0.3.jar:3.0.3] 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_04] 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_04] 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_04] 
at java.lang.reflect.Method.invoke(Method.java:601) ~[na:1.7.0_04] 
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) [plexus-classworlds-2.4.jar:na] 
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) [plexus-classworlds-2.4.jar:na] 
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) [plexus-classworlds-2.4.jar:na] 
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) [plexus-classworlds-2.4.jar:na] 
Caused by: java.lang.ClassNotFoundException: hudson.remoting.Channel 
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50) ~[plexus-classworlds-2.4.jar:na] 
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244) ~[plexus-classworlds-2.4.jar:na] 
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230) ~[plexus-classworlds-2.4.jar:na] 
... 16 common frames omitted 
[ERROR] ABORTED 
[ERROR] Failed to initialize 
[ERROR] Caused by: hudson/remoting/Channel 
[ERROR] Caused by: hudson.remoting.Channel 
[ERROR] Failure: java.net.SocketException: Connection reset 
FATAL: Connection reset 
java.net.SocketException: Connection reset 
at java.net.SocketInputStream.read(SocketInputStream.java:189) 
at java.net.SocketInputStream.read(SocketInputStream.java:121) 
at java.io.FilterInputStream.read(FilterInputStream.java:133) 
at java.io.BufferedInputStream.fill(BufferedInputStream.java:235) 
at java.io.BufferedInputStream.read(BufferedInputStream.java:254) 
at hudson.remoting.Channel.<init>(Channel.java:385) 
at hudson.remoting.Channel.<init>(Channel.java:347) 
at hudson.remoting.Channel.<init>(Channel.java:320) 
at hudson.remoting.Channel.<init>(Channel.java:315) 
at hudson.slaves.Channels$1.<init>(Channels.java:71) 
at hudson.slaves.Channels.forProcess(Channels.java:71) 
at org.hudsonci.maven.plugin.builder.internal.PerformBuild.doExecute(PerformBuild.java:174) 
at org.hudsonci.utils.tasks.PerformOperation.execute(PerformOperation.java:58) 
at org.hudsonci.maven.plugin.builder.MavenBuilder.perform(MavenBuilder.java:169) 
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19) 
at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:630) 
at hudson.model.Build$RunnerImpl.build(Build.java:175) 
at hudson.model.Build$RunnerImpl.doRun(Build.java:137) 
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:429) 
at hudson.model.Run.run(Run.java:1366) 
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46) 
at hudson.model.ResourceController.execute(ResourceController.java:88) 
    at hudson.model.Executor.run(Executor.java:145) 

我想指出这是试图通过Hudson来执行命令:

/disk7/HUDSON_HOME /行家/ slavebundle /捆绑的Maven的/ bin中/ MVN全新安装-V -b - Dmaven.ext.class.path =/disk7/HUDSON_HOME /行家/ slavebundle /资源:/disk7/hudson_home/maven/slavebundle/lib/maven3-eventspy-3.0.jar:/disk7/jboss-as-7.1.0.Final /standalone/tmp/vfs/deploymentdf2a6dfa59ee3407/hudson-remoting-2.2.0.jar-407215e5de02980f/contents -Dhudson.eventspy.port = 37183 -f的pom.xml

它试图找到“赫德森 - 圣雷莫ting-2.2.0.jar“把它放到构建路径上,但是它在错误的地方搜索它,因为当我查看哈德森远程处理的jar时,我发现它在/disk7/jboss-as-7.1.0.Final/ standalone/tmp/vfs/deploymentdf2a6dfa59ee3407/hudson-remoting-2.2.0.jar -407215e5de02980f/hudson-remoting-2.2.0.jar此版本(不在内容中)。

那么,如何配置哈德森强制它在罐子的正确位置?有没有人有想法?

在此先感谢。

+0

我有完全相同的问题,请让我知道,如果你找到一个很好的解决方案。 –

回答

0

我升级为jboss 7并面临同样的问题(在jboss 6哈德森工作正常)。解决方法...不恰当,但工作正常。在目录slavebundle/resources中解压hudson-remoting-2.2.0.jar。我正在等待新版本的jboss或哈德森。

+0

你能准确地告诉我你从哪里得到了hudson-remoting-2.2.0.jar吗? –