Maven incremental build fails to determine dependencies when "Checkout Directory" is not the parent of the projects root directory

I'm building a Java based project using Maven 3.0.3 running TeamCity Enterprise 7.0.4 (build 21474) on a ClearCase dynamic view. I have "Build only modules affected by changes" checked in the Maven build step. We use a dynamic view therefore the version control setting "Do not checkout files automaticaly" is selected and the checkout path is "Custom Path". Our src spans many VOBS and resides in different file locations but I created a mock project to highlight the issue. The mock looks something like this:

/root//project/root-pom/pom.xml

/root/project/all-modules/pom.xml

/root/project/modules/module1/...

/root/project/modules/module2/...

In "Vesion Control Settings" if I set the Checkout Settings “Custom Path” to be the parent directory of the project root directory, /root in this case, and in the Maven build step the "path to POM file" to project/all-modules/pom.xml, making a change to a src results in the expected outcome, i.e. TeamCity triggers the build, determines and builds the affected modules.

However, if in "Vesion Control Settings" I set the Checkout Settings “Custom Path” to be the directory containing the all modules POM, /root/project/all-modules in this case, and in the Maven build step the "path to POM file" to pom.xml, making a change to a src results in the unexpected outcome that TeamCity triggers the build but then does nothing and logs "No modules affected by changed files detected".

Has anyone experienced this and/or is this a known issue?

Thx,

Jason

Please sign in to leave a comment.