Title: Nant vs. BuildIt

All,

I have been pressured to test MS's BuildIt as our Architecture team is recommending it for all new development projects.  I would like to tell you all what I've found:

1) While much of the complexity is hidden from the user, as is so common for MS products, much of the control is also hidden leaving the developer one choice; to modify the source code.

2) MS recommends that you go with a single solution whenever possible so that VS can manage the dependencies.  When not possible, a partitioned single solution is recommended where there is a master solution that the build process uses and several sub-solutions that development team uses.  What they failed to mention is that in order to use project references , developers will have to reset their references EVERY TIME they get the latest code.

3) BuildIt does not have near the flexibility that Nant has and as a result, you have to wrap the call to build it in Batch files, something that I am trying to get away from.

4) The code seems to be buggy.  For example, the copying of the build output is encapsulated in the code.  I have a project called Desking.Core and a project called Core.  It tries to copy both outputs into the Latest/Core folder and throws an exception because a dll already exists with the same name (Desking.Core references Core.dll)

5) BuildIt calls devenv.exe which is significantly more overhead than csc.exe.

6) If the virtual directory for a web project does not exist, it actually shows the VS prompt and makes the user accept the directories before continuing.

I'm sure there is more but I just wanted to share some observations that I have painfully learned. 

You guys are really developing a great solution and I just wanted to say Kudos.  The support is timely as well.

Thanks for that.  I believe I will be sticking with Nant.

Evan A. Bonnett

Reply via email to