Jenkins构建在OSX上失败 [英] Jenkins build failed on OSX

查看:144
本文介绍了Jenkins构建在OSX上失败的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用Jenkins构建我的项目,以将工件部署到联系.我在macOSX上安装了Jenkins. 下面是错误,我正在得到:

I am trying to build my project using Jenkins to deploy the artifacts to the nexus. I have a Jenkins setup on my macOSX. below is the error, I am getting:

解析POM

[最严重] $ /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java -Xmx512m -XX:MaxPermSize = 128m -Dfile.encoding = UTF-8 -cp/Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven3-agent-1.3.jar:/usr/共享/Maven的/启动/plexus-classworlds-2.4.jar org.jvnet.hudson.maven3.agent.Maven3Main/usr/share/maven /Users/Shared/Jenkins/Home/war/WEB-INF/lib/remoting-2.26.jar /Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-1.3.jar 59985

[maventest] $ /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java -Xmx512m -XX:MaxPermSize=128m -Dfile.encoding=UTF-8 -cp /Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven3-agent-1.3.jar:/usr/share/maven/boot/plexus-classworlds-2.4.jar org.jvnet.hudson.maven3.agent.Maven3Main /usr/share/maven /Users/Shared/Jenkins/Home/war/WEB-INF/lib/remoting-2.26.jar /Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-1.3.jar 59985

< === [詹金斯移除容量] ===>频道已启动

<===[JENKINS REMOTING CAPACITY]===>channel started

频道已停止

错误:无法解析POM java.io.IOException:远程调用 通往Maven的频道 [/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java, -Xmx512m,-XX:MaxPermSize = 128m,-Dfile.encoding = UTF-8,-cp,/Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven3-agent-1.3.jar :/usr/share/maven/boot/plexus-classworlds-2.4.jar, org.jvnet.hudson.maven3.agent.Maven3Main,/usr/share/maven, /Users/Shared/Jenkins/Home/war/WEB-INF/lib/remoting-2.26.jar, /Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-1.3.jar, 59985]在以下位置的hudson.remoting.Channel.call(Channel.java:727)失败 hudson.maven.ProcessCache $ MavenProcess.call(ProcessCache.java:156)在 hudson.maven.MavenModuleSetBuild $ MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:770) 在 hudson.model.AbstractBuild $ AbstractBuildExecution.run(AbstractBuild.java:586) 在hudson.model.Run.execute(Run.java:1593)处 hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:491)位于 hudson.model.ResourceController.execute(ResourceController.java:88) 在hudson.model.Executor.run(Executor.java:247)造成原因: java.lang.InternalError:无法连接到窗口服务器-不够 权限.在java.lang.ClassLoader $ NativeLibrary.load(Native 方法)在java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1827) 在java.lang.ClassLoader.loadLibrary(ClassLoader.java:1724)在 java.lang.Runtime.loadLibrary0(Runtime.java:823)在 java.lang.System.loadLibrary(System.java:1045)在 sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50) 在java.security.AccessController.doPrivileged(本机方法)在 java.awt.Toolkit.loadLibraries(Toolkit.java:1605)在 java.awt.Toolkit.(Toolkit.java:1627)在 java.awt.Color.(Color.java:263)在 hudson.util.ColorPalette.(ColorPalette.java:39)在 hudson.model.BallColor.(BallColor.java:56)在 hudson.model.Result.(Result.java:51)在 java.lang.Class.forName0(本机方法),位于 java.lang.Class.forName(Class.java:171)在 com.sun.proxy.$ Proxy8.(来源未知) sun.reflect.GeneratedSerializationConstructorAccessor41.newInstance(未知 来源) java.lang.reflect.Constructor.newInstance(Constructor.java:513)在 java.io.ObjectStreamClass.newInstance(ObjectStreamClass.java:929)在 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1759) 在java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1327) 在 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1969) 在 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1893) 在 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1775) 在java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1327) 在java.io.ObjectInputStream.readObject(ObjectInputStream.java:349) 在java.util.HashMap.readObject(HashMap.java:1030)在 sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)位于 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在java.lang.reflect.Method.invoke(Method.java:597)在 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:979) 在 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871) 在 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1775) 在java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1327) 在 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1969) 在 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1893) 在 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1775) 在java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1327) 在java.io.ObjectInputStream.readObject(ObjectInputStream.java:349) 在hudson.remoting.UserRequest.deserialize(UserRequest.java:182)处 hudson.remoting.UserRequest.perform(UserRequest.java:98)在 hudson.remoting.UserRequest.perform(UserRequest.java:48)在 hudson.remoting.Request $ 2.run(Request.java:326)在 hudson.remoting.InterceptingExecutorService $ 1.call(InterceptingExecutorService.java:72) 在java.util.concurrent.FutureTask $ Sync.innerRun(FutureTask.java:303) 在java.util.concurrent.FutureTask.run(FutureTask.java:138)在 java.util.concurrent.ThreadPoolExecutor $ Worker.runTask(ThreadPoolExecutor.java:895) 在 java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:918) 在java.lang.Thread.run(Thread.java:680)上完成:失败

ERROR: Failed to parse POMs java.io.IOException: Remote call on Channel to Maven [/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java, -Xmx512m, -XX:MaxPermSize=128m, -Dfile.encoding=UTF-8, -cp, /Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven3-agent-1.3.jar:/usr/share/maven/boot/plexus-classworlds-2.4.jar, org.jvnet.hudson.maven3.agent.Maven3Main, /usr/share/maven, /Users/Shared/Jenkins/Home/war/WEB-INF/lib/remoting-2.26.jar, /Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-1.3.jar, 59985] failed at hudson.remoting.Channel.call(Channel.java:727) at hudson.maven.ProcessCache$MavenProcess.call(ProcessCache.java:156) at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:770) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:586) at hudson.model.Run.execute(Run.java:1593) at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:491) at hudson.model.ResourceController.execute(ResourceController.java:88) at hudson.model.Executor.run(Executor.java:247) Caused by: java.lang.InternalError: Can't connect to window server - not enough permissions. at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1827) at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1724) at java.lang.Runtime.loadLibrary0(Runtime.java:823) at java.lang.System.loadLibrary(System.java:1045) at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50) at java.security.AccessController.doPrivileged(Native Method) at java.awt.Toolkit.loadLibraries(Toolkit.java:1605) at java.awt.Toolkit.(Toolkit.java:1627) at java.awt.Color.(Color.java:263) at hudson.util.ColorPalette.(ColorPalette.java:39) at hudson.model.BallColor.(BallColor.java:56) at hudson.model.Result.(Result.java:51) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:171) at com.sun.proxy.$Proxy8.(Unknown Source) at sun.reflect.GeneratedSerializationConstructorAccessor41.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at java.io.ObjectStreamClass.newInstance(ObjectStreamClass.java:929) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1759) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1327) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1969) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1893) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1775) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1327) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:349) at java.util.HashMap.readObject(HashMap.java:1030) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:979) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1775) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1327) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1969) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1893) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1775) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1327) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:349) at hudson.remoting.UserRequest.deserialize(UserRequest.java:182) at hudson.remoting.UserRequest.perform(UserRequest.java:98) at hudson.remoting.UserRequest.perform(UserRequest.java:48) at hudson.remoting.Request$2.run(Request.java:326) at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) at java.lang.Thread.run(Thread.java:680) Finished: FAILURE

我已经尝试了以下解决方案,但没有成功:

I already tried the below solution but it didn't work: http://jenkins-ci.361315.n4.nabble.com/JIRA-Created-HUDSON-5584-java-io-IOException-Remote-call-on-Channel-to-Maven-td1475049.html

我拥有的配置

MAVEN_OPTS:-Xmx1024m -XX:MaxPermSize=128m -Dfile.encoding=UTF-8 -Djava.awt.headless=true

MAVEN_OPTS:-Xmx1024m -XX:MaxPermSize=128m -Dfile.encoding=UTF-8 -Djava.awt.headless=true

输出| grep java:/usr/bin/java -Djava.awt.headless=true -jar /Applications/Jenkins/jenkins.war

output of ps -ef | grep java: /usr/bin/java -Djava.awt.headless=true -jar /Applications/Jenkins/jenkins.war

构建命令:clean deploy -DaltDeploymentRepository=central::default::http://<user>:<pwd>@<host>:<port>/nexus/content/groups/public/

推荐答案

我使用的解决方案是应用Java7.您要做的是在Jenkins中添加1.7.按照以下步骤,我能够成功地构建我的项目:

The solution I used was to apply Java 7. What you want to do is add 1.7 to Jenkins. Following these steps I was able to successfully build my project:

  1. 转到Oracle Java页面并下载适用于Mac的1.7_51 jdk.
  2. 打开dmg并运行可执行文件.
  3. 在Mac上,这会将JDK安装到/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/
  4. 在Jenkins中,转到管理Jenkins">配置系统"
  5. 在"JDK"标题下,单击显示"JDK安装"的按钮
  6. 在名称下输入"JDK 1.7.0_51"
  7. 对于JAVA_HOME,键入'/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/'
  8. 选择保存
  9. 转到您的项目,然后选择配置"
  10. 您现在应该在页面顶部附近放置一个JDK.
  11. 在管理Jenkins"下选择刚刚配置的JDK
  12. 运行构建
  1. Go to the Oracle Java page and downloaded the 1.7_51 jdk for Mac.
  2. Opened the dmg and ran the executable.
  3. On the Mac, this installs the JDK to /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/
  4. In Jenkins, go to 'Manage Jenkins' > 'Configure System'
  5. Under the JDK heading, click the button that says JDK Installations
  6. Under Name type 'JDK 1.7.0_51'
  7. For JAVA_HOME type '/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/'
  8. Select Save
  9. Go to your project and select Configure
  10. You should now have a JDK drop down near the top of the page.
  11. Select the JDK you just configured under 'Manage Jenkins'
  12. Run the build

完成此操作后,我的构建成功运行,没有出现无法连接到窗口服务器-权限不足错误"的信息.

After doing this, my build successfully ran without the 'Can't connect to window server - not enough permissions error.'

这篇关于Jenkins构建在OSX上失败的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆