【问题标题】:Jenkins ClassCastException from SVNRevisionState to MercurialTagAction从 SVNRevisionState 到 MercurialTagAction 的 Jenkins ClassCastException
【发布时间】:2014-04-25 14:24:15
【问题描述】:

一些背景知识 - 我们最近将一些项目从 SVN 迁移到 HG,但不是全部。完成此操作后,我们安装了 Mercurial Jenkins 插件并更新了上述构建以利用它而不是 SVN。

什么可能导致以下问题?请注意,这似乎只发生在一个选定的作业中,但作业配置文件中的任何内容都不会让我相信存在对 SVN 的任何引用。

Apr 25, 2014 9:14:18 AM hudson.triggers.SCMTrigger$Runner runPolling
SEVERE: Failed to record SCM polling for hudson.maven.MavenModuleSet@375dff59[my-project]
java.lang.ClassCastException: hudson.scm.SVNRevisionState cannot be cast to hudson.plugins.mercurial.MercurialTagAction
        at hudson.plugins.mercurial.MercurialSCM.compareRemoteRevisionWith(MercurialSCM.java:301)
        at hudson.scm.SCM._compareRemoteRevisionWith(SCM.java:356)
        at hudson.scm.SCM.poll(SCM.java:373)
        at hudson.model.AbstractProject.pollWithWorkspace(AbstractProject.java:1605)
        at hudson.model.AbstractProject._poll(AbstractProject.java:1575)
        at hudson.model.AbstractProject.poll(AbstractProject.java:1493)
        at hudson.triggers.SCMTrigger$Runner.runPolling(SCMTrigger.java:462)
        at hudson.triggers.SCMTrigger$Runner.run(SCMTrigger.java:491)
        at hudson.util.SequentialExecutionQueue$QueueEntry.run(SequentialExecutionQueue.java:118)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
        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:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)

配置文件:

<?xml version='1.0' encoding='UTF-8'?>
<maven2-moduleset plugin="maven-plugin@2.1">
  <actions/>
  <description></description>
  <logRotator class="hudson.tasks.LogRotator">
    <daysToKeep>10</daysToKeep>
    <numToKeep>10</numToKeep>
    <artifactDaysToKeep>-1</artifactDaysToKeep>
    <artifactNumToKeep>-1</artifactNumToKeep>
  </logRotator>
  <keepDependencies>false</keepDependencies>
  <properties/>
  <scm class="hudson.plugins.mercurial.MercurialSCM" plugin="mercurial@1.50">
    <source>http://foo/my-repo</source>
    <modules></modules>
    <revisionType>BRANCH</revisionType>
    <revision>default</revision>
    <clean>false</clean>
    <browser class="hudson.plugins.mercurial.browser.RhodeCode">
      <url>http://foo</url>
    </browser>
    <credentialsId>bar</credentialsId>
    <disableChangeLog>false</disableChangeLog>
  </scm>
  <canRoam>true</canRoam>
  <disabled>false</disabled>
  <blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
  <blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
  <jdk>(Default)</jdk>
  <triggers>
    <hudson.triggers.SCMTrigger>
      <spec># every 5 minutes (perhaps at :07, :22, :37, :52)
      H/05 * * * *</spec>
      <ignorePostCommitHooks>false</ignorePostCommitHooks>
    </hudson.triggers.SCMTrigger>
  </triggers>
  <concurrentBuild>false</concurrentBuild>
  <rootModule>
    <groupId>com.foo</groupId>
    <artifactId>my-project</artifactId>
  </rootModule>
  <goals>clean</goals>
  <aggregatorStyleBuild>true</aggregatorStyleBuild>
  <incrementalBuild>false</incrementalBuild>
  <ignoreUpstremChanges>false</ignoreUpstremChanges>
  <archivingDisabled>false</archivingDisabled>
  <resolveDependencies>false</resolveDependencies>
  <processPlugins>false</processPlugins>
  <mavenValidationLevel>-1</mavenValidationLevel>
  <runHeadless>false</runHeadless>
  <disableTriggerDownstreamProjects>false</disableTriggerDownstreamProjects>
  <settings class="jenkins.mvn.DefaultSettingsProvider"/>
  <globalSettings class="jenkins.mvn.DefaultGlobalSettingsProvider"/>
  <reporters>
    <hudson.maven.reporters.MavenMailer>
      <recipients></recipients>
      <dontNotifyEveryUnstableBuild>false</dontNotifyEveryUnstableBuild>
      <sendToIndividuals>true</sendToIndividuals>
      <perModuleEmail>true</perModuleEmail>
    </hudson.maven.reporters.MavenMailer>
  </reporters>
  <publishers/>
  <buildWrappers>
    <org.jvnet.hudson.plugins.m2release.M2ReleaseBuildWrapper plugin="m2release@0.13.0">
      <scmUserEnvVar></scmUserEnvVar>
      <scmPasswordEnvVar></scmPasswordEnvVar>
      <releaseEnvVar>IS_M2RELEASEBUILD</releaseEnvVar>
      <releaseGoals>clean -Dresume=false release:prepare release:perform</releaseGoals>
      <dryRunGoals>clean -Dresume=false -DdryRun=true release:prepare</dryRunGoals>
      <selectCustomScmCommentPrefix>false</selectCustomScmCommentPrefix>
      <selectAppendHudsonUsername>false</selectAppendHudsonUsername>
      <selectScmCredentials>false</selectScmCredentials>
      <numberOfReleaseBuildsToKeep>1</numberOfReleaseBuildsToKeep>
    </org.jvnet.hudson.plugins.m2release.M2ReleaseBuildWrapper>
  </buildWrappers>
  <prebuilders/>
  <postbuilders/>
  <runPostStepsIfResult>
    <name>FAILURE</name>
    <ordinal>2</ordinal>
    <color>RED</color>
    <completeBuild>true</completeBuild>
  </runPostStepsIfResult>
</maven2-moduleset>

【问题讨论】:

  • 你有没有解决这个问题?

标签: svn jenkins mercurial


【解决方案1】:

我发现了这个错误报告:https://issues.jenkins-ci.org/browse/JENKINS-25523

作为一种解决方法,它建议进入 Source Code Management 的高级设置并检查 Disable Changelog,这对我有用。

截图

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多