南特+;MSBuild(4.0)=MSBuild启动失败w/未找到目录错误

南特+;MSBuild(4.0)=MSBuild启动失败w/未找到目录错误,msbuild,nant,Msbuild,Nant,我在一个新的基于虚拟机的构建服务器(Win7-64 Pro)上运行了CC.Net和NAnt(以及MSBuild) CC.Net可以很好地调用MSBuild,但我在处理项目范围生成时遇到了问题。条件句没有我需要的。甚至不接近 因此,我决定用NAnt调用MSBuild来处理这些情况,NAnt每次都会失败。当我从命令提示符运行nant脚本时,我得到以下结果: [loadtasks] Failure scanning "C:\nant\bin\extensions\common\2.0\Collecti

我在一个新的基于虚拟机的构建服务器(Win7-64 Pro)上运行了CC.Net和NAnt(以及MSBuild)

CC.Net可以很好地调用MSBuild,但我在处理项目范围生成时遇到了问题。条件句没有我需要的。甚至不接近

因此,我决定用NAnt调用MSBuild来处理这些情况,NAnt每次都会失败。当我从命令提示符运行nant脚本时,我得到以下结果:

[loadtasks] Failure scanning "C:\nant\bin\extensions\common\2.0\Collection
Gen.dll" for extensions. Could not load file or assembly 'Microsoft.VSDesigner,
Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of
its dependencies. The system cannot find the file specified.
Buildfile: file:///c:/c7/projects/dyndata/dyndata.build
Target framework: Microsoft .NET Framework 4.0
Target(s) specified: build


build:

[loadtasks] Scanning directory "c:\nantcontrib\bin\lib" for extension assemblies
.
     [echo] Building DynData v7.0.7

BUILD FAILED

c:\c7\projects\dyndata\dyndata.build(24,12):
Failed to start MSBuild.
    c:\c7\projects\dyndata\dyndata.build(24,12):
    External Program Failed: C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbui
ld.exe (return code was 1)

Total time: 0.4 seconds.

c:\c7\projects\dyndata\dyndata.build(24,12):
Failed to start MSBuild.
    c:\c7\projects\dyndata\dyndata.build(24,12):
    'C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe' failed to start.

        The directory name is invalid
此计算机上安装了VS2010 Pro,并且存在设计器程序集。 生成文件夹是正确的。 框架文件夹是正确的。 无数次搜索nant/msbuild和此消息都没有得到任何实质性结果

已尝试这些项目,但未能更改结果:

(尽管我在使用保险库)

我试图构建nant代码,以便通过VS2010的调试器调试问题,但源项目是一个无法运行的烂摊子,甚至无法开始构建


欢迎您的想法:)

我认为关于Microsoft.VSDesigner的第一个错误只是一个警告,而不是失败。在我的developer box和build服务器上,我安装了VS2005和VS2010 Pro,但没有安装Microsoft.VSDesigner版本7。我安装了版本8和9,但没有安装版本7


看起来“构建”目标正在nant中运行,然后失败。您正在从nantcontrib加载任务,然后尝试启动msbuild。如何启动msbuild?你能把nant文件中启动它的那部分贴出来吗?您使用的是哪种版本的nant?使用-v和-debug+标志运行nant是否有帮助?

Daddyman,下面是启动MSBuild的nant代码。我尝试了当前的alpha和.85(以及与之匹配的nantcontrib)。我猜可能是配置或平台不正确。删除/noconlog和/v:quiet参数并查看输出结果。在我运行的一个测试中,我得到了相同的通用失败消息。删除这些参数后,我从msbuild收到了一条真正的错误消息,解释了问题所在。谢谢Brian。现在我不得不使用MSBuild,但当我开始配置单元测试时,我必须回到这一点(和Nant)。谢谢我们的帮助。