我正在尝试使用MSBuild(版本3.5 ofc)编译.NET 3.5解决方案,但它在编译单元测试文件时失败。
C:\ Windows \ Microsoft.NET \ Framework \ v3.5 \ Microsoft.Common.targets:警告MSB3245:无法解析此引用。无法找到程序集“Microsoft.VisualStudio.SmartDevice.UnitTestFramework,Version = 9.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a,processorArchitecture = MSIL”。检查以确保磁盘上存在程序集。如果您的代码需要此引用,则可能会出现编译错误。
其他一些信息: - 使用Visual Studio 2008编译时,Everything(编译和testrun)工作正常。 - 我确信这个dll存在于Public(或private)Assemblies文件夹中。 - 此解决方案中的某些项目适用于.NET 3.5 Compact Framework。这可能是造成这个问题的原因吗?
此致
编辑:我找到了解决此问题的方法。我只是添加了“C:\ Program Files(x86)\ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ PublicAssemblies”我的MSBuild脚本的引用路径,它现在可以正常工作了。但是 - 我仍然认为应该有更好的方法。我正在使用C#。
答案 0 :(得分:0)
Pawel Wrobel 的解决方案(帮助了我):
<块引用>编辑:我找到了解决此问题的方法。我只是添加了 "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PublicAssemblies" 引用我的 MSBuild 脚本的路径,它现在可以工作了。但是 - 我仍然觉得应该有更好的方法。
你必须像这样传递参数:
msbuild.exe /p:ReferencePath="C:\Program Files (x86)\Microsoft Visual Studio
> 9.0\Common7\IDE\PublicAssemblies"