有没有办法使用.NET 4.5.1进行nant构建?

时间:2015-01-23 17:31:45

标签: nant

我们刚刚将项目从4.0更新到4.5.1,我们在NAnt上构建它时遇到了问题。我刚刚检查过它看起来已经死了。

有没有办法使用框架4.5.1构建它?最后一个版本只支持框架4。

2 个答案:

答案 0 :(得分:5)

如果你想保留现有的构建脚本/ msbuild任务,另一种方法是:我们实际上仍在运行NAnt 0.85,但是直接用.Net 4构建。为了支持更新的框架版本,你需要做两件事:

首先,修改nant.exe.config。有一个部分处理框架 - 您将看到net-2.0net-4.0等条目。找到net-4.0的条目并复制它。然后根据需要浏览并更新路径/ .Net版本号。

其次,在构建脚本的开头,指定要使用的框架:

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

您可以在构建期间根据需要在框架之间切换 - 根据需要,我们的遗留系统部分在.Net 2和.Net 4之间切换。

答案 1 :(得分:1)

我们使用NANT MSBUILD任务而不是使用NANT EXEC任务,并通过传递属性直接调用MSBUILD.exe

  1. “program” - (v3.5,4.0,4.5)msbuild.exe的位置
  2. “命令行” - csproj或解决方案文件的位置,其他属性
  3. 这样我们就可以控制我们使用的MSBUILD版本,而不依赖于支持最新框架的NANT。另外,如果要在此方案中处理增量构建,则应将MSBUILD构建/重建参数作为属性传递给exec任务而不是硬编码。