> > I think we can now say, after a few months, that we're all very happy > with the Maven build system. It took us long hours to get working, but > now it has made the integration of studio in the CI system very easy, > and has unified the whole build system within the Directory project. I > really think it was a great move. > It made me like Maven a lot... :D
Heyhey :-) > > There's only one thing I regret from our old Ant build system, that > saved us a lot of time. > In the old system, we had a timestamp set in the help projects and we > were only building them if, and only if, there has been changes to the > code between the last build (according to the timestamp). > > Let's have a look at the help plugins build times: > [INFO] Apache Directory Studio Schema Editor Help ............ SUCCESS > [27.815s] > [INFO] Apache Directory Studio RCP Help ...................... SUCCESS > [16.841s] > [INFO] Apache Directory Studio LDIF Editor Help .............. SUCCESS > [15.026s] > [INFO] Apache Directory Studio LDAP Browser Help ............. SUCCESS > [40.328s] > [INFO] Apache Directory Studio Apache DS Configuration Help .. SUCCESS > [23.601s] > [INFO] Apache Directory Studio Apache DS Help ................ SUCCESS > [16.241s] > > These 6 projects took 139,7 seconds to build. That's 58% of the time of > our build... :( > > I really wish we could do something about this, and only build these > projects when we need them. > > If anyone has an idea. Well, here's an idea let us see if we can adapt/configure it for our needs: Put the *help modules into a separate profile and have it activated by ? (see [1]). We just need to find an appropriate activator which fits our needs. We can have e.g. such a timestamp file (exist or not) to activate to 'help' profile. The question is just 'How to figure out if something has changed?". One possibility could be that we create such a file when doing a build and only delete it when running a new build including the 'clean' goal -> adapt the clean goal configuration in such a way that it deletes the timestamp file. The timestamp file needs to be added to svn:ignore and it's location can/should be in the *help modules root directory. As said, just an idea. Maybe there are better solutions. [1] http://maven.apache.org/pom.html#Activation Regards Felix
