我在OpenShift中有一个使用Jenkins构建的应用程序。应用程序是使用Gradle构建的(根据https://blog.openshift.com/run-gradle-builds-on-openshift/配置)并且需要使用JDK 8构建。我遵循How to update JDK on Jenkins Server cartridge (OpenShift)?的建议并配置了JDK以便下载,它完美运行(我可以看到JDK正在日志中下载)但是现在构建永远不会完成,而是出现以下错误:
Slave在构建期间脱机 错误:连接已断开:java.io.IOException:通道意外终止 在hudson.remoting.SynchronousCommandTransport $ ReaderThread.run(SynchronousCommandTransport.java:50) 引起:java.io.EOFException at java.io.ObjectInputStream $ PeekInputStream.readFully(ObjectInputStream.java:2332) at java.io.ObjectInputStream $ BlockDataInputStream.readShort(ObjectInputStream.java:2801) at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:801) 在java.io.ObjectInputStream。(ObjectInputStream.java:299) 在hudson.remoting.ObjectInputStreamEx。(ObjectInputStreamEx.java:40) 在hudson.remoting.AbstractSynchronousByteArrayCommandTransport.read(AbstractSynchronousByteArrayCommandTransport.java:34) 在hudson.remoting.SynchronousCommandTransport $ ReaderThread.run(SynchronousCommandTransport.java:48)
构建步骤'执行shell'标记为失败 错误:发布者hudson.tasks.ArtifactArchiver因异常而中止 hudson.AbortException:没有diy-build#9的工作空间 在hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:72) 在hudson.tasks.BuildStepMonitor $ 1.perform(BuildStepMonitor.java:20) 在hudson.model.AbstractBuild $ AbstractBuildExecution.perform(AbstractBuild.java:761) 在hudson.model.AbstractBuild $ AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:721) 在hudson.model.Build $ BuildExecution.post2(Build.java:183) 在hudson.model.AbstractBuild $ AbstractBuildExecution.post(AbstractBuild.java:670) 在hudson.model.Run.execute(Run.java:1766) 在hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) 在hudson.model.ResourceController.execute(ResourceController.java:98) 在hudson.model.Executor.run(Executor.java:374) 完成:失败
构建有时会在不同阶段中止,有时在下载依赖项时,有时会在编译阶段进行。
如果我从构建中删除JDK 8,它会再次运行,但是我的测试失败了,因为它们需要Java 8。