3

我正在尝试使用 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 编译它时,一切(编译和测试运行)工作正常。 - 我确信这个 dll 存在于公共(或私有)程序集文件夹中。- 此解决方案中的某些项目适用于 .NET 3.5 Compact Framework。这可能是导致此问题的原因吗?

问候,

编辑:我找到了解决此问题的方法。我只是在我的 MSBuild 脚本中添加了“C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PublicAssemblies”参考路径,它现在可以工作了。但是 - 我仍然觉得应该有更好的方法。

我正在使用 C#。

4

1 回答 1

0

Pawel Wrobel 的解决方案(帮助了我):

编辑:我找到了解决这个问题的方法。我只是在我的 MSBuild 脚本中添加了“C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PublicAssemblies”参考路径,它现在可以工作了。但是 - 我仍然觉得应该有更好的方法。

你必须像这样传递参数:

msbuild.exe /p:ReferencePath="C:\Program Files (x86)\Microsoft Visual Studio
> 9.0\Common7\IDE\PublicAssemblies"
于 2021-03-12T09:34:09.767 回答