Nant msbuild任务与.NET 4.0 RC

5

在我的nant脚本中,我需要告诉msbuild任务使用.NET 4.0 RC。该如何指示?


为什么你的nant脚本中有一个msbuild任务?如果你正在使用msbuild,为什么要这样做? - Mitch Wheat
1
您可以使用NAnt来处理整个项目的自动化任务(例如运行测试、运行分析、版本控制、打包等),并将编译委托给MSBuild。 - Grant Palin
格兰特是正确的,Nant正在执行构建、运行测试、运行ncover,然后处理一些数据库脚本。 - ctrlalt313373
2个回答

4
我认为最新的NAnt/NAntContrib默认使用.NET 3.5,所以您需要将其更改为4.0。有一个NAnt属性可以处理这个问题(<property name="nant.settings.currentframework" value="net-4.0" />),应该放在NAnt构建文件的顶部附近。
接下来,您需要进入NAnt的配置文件并添加4.0节点,以便NAnt(及NantContrib)知道新的CLR版本。

这似乎解决了问题。我只想附上一个链接到一个博客,我在那里找到了实际的nant配置部分。只需要将版本号更新为发布候选版并在启动部分添加一行即可。http://paigecsharp.blogspot.com/2009/08/nant-net-framework-40-configuration.html - ctrlalt313373
这基本上就是我在尝试使用 VS 2010/.NET 4 进行自动化构建时所必须做的。很抱歉我无法在这里粘贴解决方案,因为我手头没有代码。不过很高兴我能够帮助你走向解决方案。 - Grant Palin

1

第一种选择是更改MSBuild任务使用的可执行文件。根据doco,这是一个框架属性,因此您需要在主nant配置文件中更改它,而不是在您的个人脚本中,并且您必须在计划在其上构建脚本的每台机器上都要更改。

另一个选择是使用exec任务。 这个问题和答案应该会有所帮助。

编辑:忘记提到MSBuild所在的目录。要更改版本,只需使用不同的MSBuild。

2.0:%windir%\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe
3.5:%windir%\Microsoft.NET\Framework\v3.5\MSBuild.exe
4.0b2:%windir%\Microsoft.NET\Framework\v4.0.21006\MSBuild.exe


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接