Uploaded image for project: 'Continuum'
  1. Continuum
  2. CONTINUUM-2222

pom.xml is deleted if validation fails

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.2.3, 1.3.4 (Beta)
    • Fix Version/s: 1.4.2
    • Component/s: Integration - Maven 2
    • Environment:
      Java 1.6.0_10, RedHat Enterprise Linux 5.3, Maven 2.1.0, Perforce 2008.2

      Description

      If Continuum fails to parse the project descriptor for some reason, the pom.xml is deleted from the workspace. With SCMs like Perforce that keep track of the files in a workspace, the pom.xml is not re-synced on subsequent checkouts, which causes build errors until someone manually intervenes (either by making an unnecessary change to the file or by forcing a sync of the workspace).

      Here's a sample trace. It was caused when a dependency's version was refactored to the dependencyManagement section of the parent. Continuum built the lower-level project before the parent.

      org.apache.maven.continuum.execution.ContinuumBuildExecutorException: Unable to read the Maven project descriptor '/var/continuum/sources/484/pom.xml': Failed to validate POM for project com.example:invalid-project at /var/continuum/sources/484/pom.xml
      'dependencies.dependency.version' is missing for com.example:other-project

      at org.apache.maven.continuum.execution.maven.m2.MavenTwoBuildExecutor.getMavenProject(MavenTwoBuildExecutor.java:334)
      at org.apache.maven.continuum.execution.maven.m2.MavenTwoBuildExecutor.shouldBuild(MavenTwoBuildExecutor.java:414)
      at org.apache.maven.continuum.buildcontroller.DefaultBuildController.shouldBuild(DefaultBuildController.java:557)
      at org.apache.maven.continuum.buildcontroller.DefaultBuildController.build(DefaultBuildController.java:151)
      at org.apache.maven.continuum.buildcontroller.BuildProjectTaskExecutor.executeTask(BuildProjectTaskExecutor.java:50)
      at org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor$ExecutorRunnable$1.run(ThreadedTaskQueueExecutor.java:116)
      at edu.emory.mathcs.backport.java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:442)
      at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:178)
      at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
      at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
      at java.lang.Thread.run(Thread.java:619)

        Attachments

          Activity

            People

            • Assignee:
              brettporter Brett Porter
              Reporter:
              peterj Peter Janes
            • Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: