|
We use default schedule, same happens if I just use "build all projects" in a group, it just builds from top to bottom (thus list order defines the build order). We have the following dependencies (all flat structure): A (parent), has modules listed in the following order: B, C, D, E As you can see there are not circular dependencies (otherwise maven would not build I imagine). The parent project has modules listed like this: <module>../E</module> Each sub project has a relative path to the parent pom: <relativePath>../A/pom.xml</relativePath> I have the same project working in beta 2 only because it sorted the modules in the right order (still if I add an extra module to the group it does not reorder them but adds at the end thus forcing me to delete the projects from continuum and re-add them). I have not figured another way to build flat projects in continuum. Small correction, the reactor build order is specified as I have given in the example with <module/> sections (sorry was a bit misleading in the beginning). maven and Continuum don't use the order in the modules list to found the build order, all is based on dependencies analyze. Can you attach a sample project that reproduce your issue? Ok, attaching the example project. As you can see it adds the projects in alphabetic order. Another problem is that relative both paths and scm connection url for sub-projects are also not respected - I have to change scm urls in continuum for each project except project 'a' (the parent project). Project a is also the project I add (as parent ) to continuum. While reactor build order (log from maven): [INFO] Reactor build order: This is the order what I get in continuum: Project Name Hope this helps. I've used file system in scm info, so you would need to modify it for all modules, for the rest it should work out of the box. The build order is correct on your test project. I get this in logs: jvm 1 | 2007-10-22 11:42:49,343 [SocketListener0-0] INFO org.apache.maven.continuum.Continuum:default - Enqueuing 'a' with build definition 'default maven2 buildDefinition' - id=6). jvm 1 | 2007-10-22 11:42:49,609 [SocketListener0-0] INFO org.apache.maven.continuum.Continuum:default - Enqueuing 'e' with build definition 'default maven2 buildDefinition' - id=6). jvm 1 | 2007-10-22 11:42:49,687 [SocketListener0-0] INFO org.apache.maven.continuum.Continuum:default - Enqueuing 'd' with build definition 'default maven2 buildDefinition' - id=6). jvm 1 | 2007-10-22 11:42:49,750 [SocketListener0-0] INFO org.apache.maven.continuum.Continuum:default - Enqueuing 'c' with build definition 'default maven2 buildDefinition' - id=6). jvm 1 | 2007-10-22 11:42:49,953 [SocketListener0-0] INFO org.apache.maven.continuum.Continuum:default - Enqueuing 'b' with build definition 'default maven2 buildDefinition' - id=6). I don't know where you see the order a,b, c, d, e, if it is in the project group summary page, it is normal because projects are sorted in alphabetical order and this list is independant of the build order |
|||||||||||||||||||||||||||||||||||||||||||||
When Continuum determine the build order, he don't know if it is a flat project or a standard structure. It look only at dependencies in POMs to determine which projects must be built before an other.
If it build projects in alphabet order it isn't because you use a flat structure but something else.
what is the cron expression for your schedule?
do you have a cycle in your dependencies (check your logs when projects are put in queue)?