2017-02-07 2 views
1

정적 분석 결과를 수집하는 동안 Jenkins 종속 노드에서 작업이 실패합니다.Jenkins 슬레이브의 정적 분석이 실패합니다.

동일한 작업이 마스터 젠킨스 노드에서 잘 작동합니다. 젠킨스를 ssh 자격 증명을 사용하거나 "명령 실행"을 통해 연결하려고했는데 동일한 결과가 나타납니다.

마스터와 슬레이브는 동일한 Java 버전을 사용합니다 : OpenJDK Zulu 8.20.0.5-linux64.

Maven repo, .jenkins/cache 및 slave.jar를 정리하려고했지만 아무 도움이되지 않았습니다. slave.jar이 올바른 파일이고 md5가 master 파일과 일치합니다.

정적 분석 콜렉터 플러그인은 최신 버전 (1.50)입니다. Checkstyle 플러그인도 최신 버전입니다 (3.47). 젠킨스 버전은 1.642.3입니다. 내가 org.apache.commons.digester3.Digester 범주에 대한 로그 설정하면

00:02:49.892 [INFO] ------------------------------------------------------------------------ 
00:02:49.892 [INFO] BUILD SUCCESS 
00:02:49.892 [INFO] ------------------------------------------------------------------------ 
00:02:49.892 [INFO] Total time: 01:58 min 
00:02:49.892 [INFO] Finished at: 2017-02-07T23:13:52+02:00 
00:02:50.165 [INFO] Final Memory: 48M/1332M 
00:02:50.165 [INFO] ------------------------------------------------------------------------ 
00:02:50.197 ################################################################### 
00:02:50.197 job-exporter plugin started 
00:02:50.197  hudson.version: 1.642.3 
00:02:50.197  host: 
00:02:50.197  id: 11 
00:02:50.197  duration: 2 min 50 sec 
00:02:50.197  slave: jenkins-slave 
00:02:50.197  started: 2017-02-07T23:11:02 
00:02:50.197  result: SUCCESS 
00:02:50.197  summary: Executor #3 for jenkins-slave : executing phb-test-1 #11 
00:02:50.197  executor: 3 
00:02:50.197  elapsedTime: 170200 
00:02:50.197  number: 11 
00:02:50.198  jobName: phb-test-1 
00:02:50.198  gitBranch: origin/master 
00:02:50.198 we have 1 build cause: 
00:02:50.241  Cause.UserIdCause Started by user --- 
00:02:50.241  user.id: --- 
00:02:50.241  user.name: --- --- (---) 
00:02:50.241  user.fullName: --- --- (---) 
00:02:50.241  user.emailAddress: [email protected] 
00:02:50.247 new file written: /root/workspace/phb-test-1/hudsonBuild.properties 
00:02:50.247 job-exporter plugin finished. That's All Folks! 
00:02:50.247 ################################################################### 
00:02:50.430 [CHECKSTYLE] Collecting checkstyle analysis files... 
00:02:51.087 ERROR: Build step failed with exception 
00:02:51.087 java.lang.NullPointerException 
00:02:51.089 at org.apache.commons.digester3.Digester.getXMLReader(Digester.java:799) 
00:02:51.089 at org.apache.commons.digester3.Digester.parse(Digester.java:1642) 
00:02:51.089 at org.apache.commons.digester3.Digester.parse(Digester.java:1745) 
00:02:51.089 at hudson.plugins.checkstyle.parser.CheckStyleParser.parse(CheckStyleParser.java:67) 
00:02:51.089 at hudson.plugins.analysis.core.AbstractAnnotationParser.parse(AbstractAnnotationParser.java:54) 
00:02:51.089 at hudson.plugins.analysis.core.FilesParser.parseFile(FilesParser.java:325) 
00:02:51.089 at hudson.plugins.analysis.core.FilesParser.parseFiles(FilesParser.java:283) 
00:02:51.089 at hudson.plugins.analysis.core.FilesParser.parserCollectionOfFiles(FilesParser.java:234) 
00:02:51.089 at hudson.plugins.analysis.core.FilesParser.invoke(FilesParser.java:203) 
00:02:51.089 at hudson.plugins.analysis.core.FilesParser.invoke(FilesParser.java:31) 
00:02:51.089 at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2719) 
00:02:51.089 at hudson.remoting.UserRequest.perform(UserRequest.java:120) 
00:02:51.089 at hudson.remoting.UserRequest.perform(UserRequest.java:48) 
00:02:51.089 at hudson.remoting.Request$2.run(Request.java:326) 
00:02:51.089 at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68) 
00:02:51.089 at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
00:02:51.089 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
00:02:51.089 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
00:02:51.089 at java.lang.Thread.run(Thread.java:745) 
00:02:51.089 at ......remote call to ph-jenkins-slave-ntn(Native Method) 
00:02:51.089 at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1416) 
00:02:51.089 at hudson.remoting.UserResponse.retrieve(UserRequest.java:220) 
00:02:51.089 at hudson.remoting.Channel.call(Channel.java:781) 
00:02:51.089 at hudson.FilePath.act(FilePath.java:979) 
00:02:51.089 at hudson.FilePath.act(FilePath.java:968) 
00:02:51.089 at hudson.plugins.checkstyle.CheckStylePublisher.perform(CheckStylePublisher.java:78) 
00:02:51.089 at hudson.plugins.analysis.core.HealthAwarePublisher.perform(HealthAwarePublisher.java:68) 
00:02:51.089 at hudson.plugins.analysis.core.HealthAwareRecorder.perform(HealthAwareRecorder.java:295) 
00:02:51.089 at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:78) 
00:02:51.089 at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) 
00:02:51.089 at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:782) 
00:02:51.089 at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:723) 
00:02:51.089 at hudson.model.Build$BuildExecution.post2(Build.java:185) 
00:02:51.089 at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:668) 
00:02:51.089 at hudson.model.Run.execute(Run.java:1763) 
00:02:51.089 at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) 
00:02:51.089 at hudson.model.ResourceController.execute(ResourceController.java:98) 
00:02:51.089 at hudson.model.Executor.run(Executor.java:410) 
00:02:51.089 Build step 'Publish Checkstyle analysis results' marked build as failure 
00:02:51.096 Finished: FAILURE 

은 또한 다음과 같은 예외를 참조하십시오

Feb 07, 2017 11:13:53 PM SEVERE org.apache.commons.digester3.Digester getParser 
Digester.getParser: 
java.lang.UnsupportedOperationException: This parser does not support specification "null" version "null" 
    at javax.xml.parsers.SAXParserFactory.setSchema(SAXParserFactory.java:394) 
    at org.apache.commons.digester3.Digester.getFactory(Digester.java:441) 
    at org.apache.commons.digester3.Digester.getParser(Digester.java:652) 
    at org.apache.commons.digester3.Digester.getXMLReader(Digester.java:799) 
    at org.apache.commons.digester3.Digester.parse(Digester.java:1642) 
    at org.apache.commons.digester3.Digester.parse(Digester.java:1745) 
    at hudson.plugins.checkstyle.parser.CheckStyleParser.parse(CheckStyleParser.java:67) 
    at hudson.plugins.analysis.core.AbstractAnnotationParser.parse(AbstractAnnotationParser.java:54) 
    at hudson.plugins.analysis.core.FilesParser.parseFile(FilesParser.java:325) 
    at hudson.plugins.analysis.core.FilesParser.parseFiles(FilesParser.java:283) 
    at hudson.plugins.analysis.core.FilesParser.parserCollectionOfFiles(FilesParser.java:234) 
    at hudson.plugins.analysis.core.FilesParser.invoke(FilesParser.java:203) 
    at hudson.plugins.analysis.core.FilesParser.invoke(FilesParser.java:31) 
    at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2719) 
    at hudson.remoting.UserRequest.perform(UserRequest.java:120) 
    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:68) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:745) 

가 감사를

답변

1

내가 눈치가이 마스터 노드에 실행중인 프로세스에 대한 인수는 -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl입니다. 슬레이브 노드 정의에 VM 인수와 동일한 것을 추가했는데 이제는 잘 동작합니다.

관련 문제