How can I exclude a project from a build in MSBuild?

Andrew Lubochkn picture Andrew Lubochkn · Mar 19, 2012 · Viewed 46.8k times · Source

I need to build a solution, but exclude one project. How should I do it?

I searched a lot about this issue, but nothing could help.

An ItemGroup section rises the following exception:

Invalid element . Unknown task or datatype.

PropertyGroup also rises the exception.

Below is my code sample:

<project name="TI 8.1.6 build script">
  <ItemGroup>
    <Solution Include="${ROOT}\Core\TI Core.sln" Exclude="${ROOT}\Utilities\DTS Indexing Service\Tdi.Origami.IndexUpdaterServiceSetup\Tdi.Origami.IndexUpdaterServiceSetup.wixproj"/>
  </ItemGroup>
...
</project>

How can I do this?

Answer

Enrico Campidoglio picture Enrico Campidoglio · Mar 19, 2012

You can exclude projects at the solution level for a specific build configuration by using the Configuration Manager Dialog in Visual Studio:

Configuration Manager Dialog

Then you can simply invoke msbuild on the solution file specifying the build configuration to use:

msbuild /property:Configuration=Release MySolution.sln