我有一个简单的HelloWorld应用程序,我正在尝试使用NAnt构建它。然而,即使使用最简单的构建文件,我仍然不能让它工作。下面是我的HelloWorld.build文件。
<?xml version="1.0"?>
<project name="Hello World" default="build">
<property name="nant.settings.currentframework" value="net-3.5"/>
<target name="build">
<echo>Hello</echo>
<exec program="${framework::get-framework-directory(framework::get-target-framework())}\msbuild.exe"
commandline="HelloWorld /t:Clean /p:Configuration=Debug /v:q" workingdir="." />
</target>以下是结果。
C:\webdev\HelloWorld>c:\nant-0.86-beta1\bin\NAnt.exe build
NAnt 0.86 (Build 0.86.2898.0; beta1; 12/8/2007)
Copyright (C) 2001-2007 Gerry Shaw
http://nant.sourceforge.net
Buildfile: file:///C:/webdev/HelloWorld/HelloWorld.build
Target framework: Microsoft .NET Framework 2.0
Target(s) specified: build
[property] Target framework changed to "Microsoft .NET Framework 3.5".
BUILD FAILED
INTERNAL ERROR
System.NullReferenceException: Object reference not set to an instance of an object.
at NAnt.Core.FrameworkInfo.get_Version()
at NAnt.Core.Project.UpdateTargetFrameworkProperties()
at NAnt.Core.Tasks.PropertyTask.ExecuteTask()
at NAnt.Core.Task.Execute()
at NAnt.Core.Project.InitializeProjectDocument(XmlDocument doc)
at NAnt.Core.Project.Execute()
at NAnt.Core.Project.Run()
Please send bug report to nant-developers@lists.sourceforge.net.
Total time: 0 seconds.此外,当我尝试手动设置要使用的.NET框架时,我得到了以下信息:
C:\webdev\HelloWorld>c:\nant-0.86-beta1\bin\NAnt.exe -t:net-3.5
NAnt 0.86 (Build 0.86.2898.0; beta1; 12/8/2007)
Copyright (C) 2001-2007 Gerry Shaw
http://nant.sourceforge.net
Microsoft .NET Framework 3.5 (net-3.5) is not installed, or not correctly configured.
Object reference not set to an instance of an object.但是,配置文件中确实有一个条目,对应于带有NAnt-0.86- .This和Visual C# 2008速成版的Visual 3.5。我是不是完全偏离正轨了?如果是这样的话,有没有人可能有一个模板构建文件可以重用?
谢谢。
发布于 2009-10-27 02:44:40
有时,此错误是因为生成服务器未安装sdk。
尝试安装windows sdk。您可以在Microsoft Download Center上下载
可能需要额外的步骤才能让nant识别sdk,请参考此Page Brook's Blog Post
发布于 2009-10-30 23:41:39
Nant 0.86中有一个bug,更多信息请参阅http://sourceforge.net/tracker/index.php?func=detail&aid=1986551&group_id=31650&atid=402868。
您可以下载Nant nightly build (当前为nant-0.86-nightly-2009-05-05),该版本修复了此错误。
https://stackoverflow.com/questions/1348552
复制相似问题