在Windows Server 2008 R2中运行Nant 0.86

时间:2011-02-08 11:15:46

标签: .net nant windows-server-2008-r2

您好我正在尝试运行Nant,但在我尝试构建

时仍然遇到此错误

无法初始化“Microsoft .NET Framework 3.5”目标框架    物业评估失败    表达:$>    属性'sdkInstallRoot'尚未设置

我之前运行的.Net framework 4.0是3.5;有没有解决这个问题?我需要做什么?

2 个答案:

答案 0 :(得分:3)

这是一个NAnt配置问题 - 对于目标框架“net-3.5”,正在从不存在的注册表项中读取“sdkInstallRoot”属性。

详细信息可能因服务器及其配置而异,但一般情况下,您需要a)确保服务器上安装了相应的.NET和Windows SDK,并且b)NAnt.exe.config正确引用登记处。

在配置文件中查找名为“net-3.5”的<framework>部分。在该元素内部,还有另一个名为<project>的元素。它定义了属性installRoot和有问题的sdkInstallRoot。版本0.86不使用适用于Vista和更高版本操作系统的注册表项。实际的SDK安装文件夹密钥可以是几个名称之一 - 使用regedit.exe来查找。

例如,在我的机器上,sdkInstallRoot定义为:

<readregistry
    property="sdkInstallRoot"
    key="SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.0A\WinSDK\InstallationFolder"
    hive="LocalMachine"
    failonerror="false" />

验证注册表项是否存在,如果不存在,请更正配置文件。那个应该解决你的问题!

答案 1 :(得分:1)

也许你试试最新版本的NAnt。当前版本为0.91-alpha2(2010年8月17日)。作为release notes状态,在0.91-alpha1(2010年5月29日)中添加了对.NET 4.0的支持。不要担心alpha状态。我们在生产环境中使用此版本没有任何问题。