Jenkins hudson.scm.SVNRevisionState cannot be cast to hudson.scm.SVNRevisionState
🏷️ Jenkins
Jenkins Jon 从 SVN 获取代码后报如下错误:
txt
构建中 在工作空间 D:\jenkins\workspace\workspace\Publish-SOA-A 中
Updating https://192.168.0.1:8443/svn/2_SourceCode/Dev/Soa at revision '2018-06-15T16:46:28.934 +0800' --quiet
Using sole credentials liujiajia/****** in realm ‘<https://192.168.0.1:8443> VisualSVN Server’
At revision 70672
FATAL: hudson.scm.SVNRevisionState cannot be cast to hudson.scm.SVNRevisionState
java.lang.ClassCastException: hudson.scm.SVNRevisionState cannot be cast to hudson.scm.SVNRevisionState
at hudson.scm.SubversionSCM.calcChangeLog(SubversionSCM.java:757)
at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:892)
at hudson.scm.SCM.checkout(SCM.java:504)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1208)
at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:574)
at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:499)
at hudson.model.Run.execute(Run.java:1794)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:97)
at hudson.model.Executor.run(Executor.java:429)
由于构建失败而跳过归档
Finished: FAILURE
虽然这次执行报了错,但是再次执行时又可以正常获取并发布了。
查看了下 JOB 工作目录中的代码,已经获取到最新的代码了。
根据错误日志可以看出是在 hudson.scm.SubversionSCM.calcChangeLog(SubversionSCM.java:757)
这里出错的。
看方法名应该是在处理 SVN 提交的日志时出错了。
Subversion 插件的版本为 2.10.5。
百度到了一篇 Jenkins 通过 SVN update 后报错 FATAL: hudson.scm.SVNRevisionState cannot be cast to hudson.scm.SVNRevisionSt 说是 JOB 名有中文导致的,但我的 JOB 名中并没有中文。
So,最后还是不知道为什么出错了。
(╯▽╰)╭
貌似这个是官方的 Issue:ENKINS-27079:ClassCastException: hudson.scm.SVNRevisionState cannot be cast to hudson.scm.SVNRevisionState
删除然后再重装了 SVN 插件之后,貌似就好了。
ʅ(´◔౪◔)ʃ