Building .NET 4 projects with Nant

plaureano picture plaureano · Aug 1, 2009 · Viewed 22k times · Source

How do I get nant to build projects that target the .NET 4.0 Framework?

Answer

user206890 picture user206890 · Apr 14, 2010

2010 April 15, ... Update to above correct answer from Eugene, after .net 4 and vs2010 was released.

I downloaded vs2010 and .net 4 runtime. The production version seems to be v4.30319 ie (C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319)

After reviewing http://paigecsharp.blogspot.com/2009/08/nant-net-framework-40-configuration.html, ... I pasted in the text and changed all text from v4.0.20506 to v4.30319 an added text to NAnt.exe.config.

I then updated my nant script to

<property name="nant.settings.currentframework" value="net-4.0" />, 

this so my project nant script uses the .net 4 compiler

And this got me a nant build with .net 4 binary ....

Update 2010-06-14: The above was answered with nant-0.85, I upgraded to nant-0.90 and had to add vendor="Microsoft" to framework attribute that is added to nants config. Also, it looks like nant0.9 finds the .net libraries differently, as I had to add something like this to my nant build.xml ...

<property name="framework-get-assembly-directory" value="${framework::get-assembly-directory('net-4.0')}" />
<property name="dotNetReferenceAssemblyPath" value="${framework-get-assembly-directory}\" />

and

<include name="${dotNetReferenceAssemblyPath}System.ComponentModel.DataAnnotations.dll" />