Windows 2000을 실행하는 Jenkins의 슬레이브를 설정하여 C++
기반 프로젝트를 빌드합니다. 빈 작업은 정상적으로 실행되므로 기본 기능이 작동한다고 결론을 내립니다. GitLockFailedException
을 검색Jenkins 빌드가 Windows에서 GitLockFailedException으로 실패합니다.
19:50:34 Started by user a.rogozhnikov
19:50:34 Собирается удаленно на build-winxp in workspace c:\jenkins\workspace\ATM-windows
19:50:34 java.io.IOException: remote file operation failed: c:\jenkins\workspace\ATM-windows at [email protected]:build-winxp
19:50:34 at hudson.FilePath.act(FilePath.java:910)
19:50:34 at hudson.FilePath.act(FilePath.java:887)
19:50:34 at org.jenkinsci.plugins.gitclient.Git.getClient(Git.java:66)
19:50:34 at hudson.plugins.git.GitSCM.createClient(GitSCM.java:569)
19:50:34 at hudson.plugins.git.GitSCM.createClient(GitSCM.java:561)
19:50:34 at hudson.plugins.git.GitSCM.checkout(GitSCM.java:866)
19:50:34 at hudson.model.AbstractProject.checkout(AbstractProject.java:1414)
19:50:34 at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:652)
19:50:34 at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88)
19:50:34 at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:561)
19:50:34 at hudson.model.Run.execute(Run.java:1678)
19:50:34 at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
19:50:34 at hudson.model.ResourceController.execute(ResourceController.java:88)
19:50:34 at hudson.model.Executor.run(Executor.java:231)
19:50:34 Caused by: java.io.IOException: Remote call on build-winxp failed
19:50:34 at hudson.remoting.Channel.call(Channel.java:731)
19:50:34 at hudson.FilePath.act(FilePath.java:903)
19:50:34 ... 13 more
19:50:34 Caused by: java.lang.NoClassDefFoundError: hudson/plugins/git/GitLockFailedException
19:50:34 at org.jenkinsci.plugins.gitclient.Git$1.invoke(Git.java:63)
19:50:34 at org.jenkinsci.plugins.gitclient.Git$1.invoke(Git.java:54)
19:50:34 at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2461)
19:50:34 at hudson.remoting.UserRequest.perform(UserRequest.java:118)
19:50:34 at hudson.remoting.UserRequest.perform(UserRequest.java:48)
19:50:34 at hudson.remoting.Request$2.run(Request.java:328)
19:50:34 at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
19:50:34 at java.util.concurrent.FutureTask.run(Unknown Source)
19:50:34 at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
19:50:34 at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
19:50:34 at hudson.remoting.Engine$1$1.run(Engine.java:63)
19:50:34 at java.lang.Thread.run(Unknown Source)
19:50:34 Caused by: java.lang.ClassNotFoundException: hudson.plugins.git.GitLockFailedException
19:50:34 at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1365)
19:50:34 at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1315)
19:50:34 at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:1068)
19:50:34 at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
19:50:34 at hudson.remoting.RemoteClassLoader$ClassLoaderProxy.fetch4(RemoteClassLoader.java:742)
19:50:34 at hudson.remoting.RemoteClassLoader$ClassLoaderProxy.fetch3(RemoteClassLoader.java:784)
19:50:34 at sun.reflect.GeneratedMethodAccessor41.invoke(Unknown Source)
19:50:34 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
19:50:34 at java.lang.reflect.Method.invoke(Method.java:622)
19:50:34 at hudson.remoting.RemoteInvocationHandler$RPCRequest.perform(RemoteInvocationHandler.java:299)
19:50:34 at hudson.remoting.Request$2.run(Request.java:328)
19:50:34 at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
19:50:34 at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
19:50:34 at java.util.concurrent.FutureTask.run(FutureTask.java:166)
19:50:34 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
19:50:34 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
19:50:34 at java.lang.Thread.run(Thread.java:701)
19:50:34 Finished: FAILURE
단서를 제공하지 않고 내가 뭔가를 놓친 것 같아 : 나는 복제하는 git
의 repo를 추가하려고하면 여전히 오류가 발생합니다. 젠킨스 슬레이브 서비스를 일반 사용자 (도움이되지 않음)로 실행하려했으나 Run Windows Command
빌드 단계 (수동으로 시도했지만 더 많은 노력이 필요함)에서 git clone
을 시도했습니다. 무엇이 문제 일 수 있습니까?
아마도 허드슨은 일반적으로 서비스 제어판에서 SYSTEM 사용자로 실행되므로 원격 repo에 대한 올바른 액세스 권한이 반드시 필요하지는 않습니다. 이것을 테스트하기 위해 자신의 사용자로 실행 해보십시오. – gbjbaanb