MSBuild:导入的项目...找不到Sdk.props

时间:2017-05-03 10:59:52

标签: c# msbuild

我为Visual Studio 2017安装了构建工具,并尝试使用:

构建DiscUtils solution
& "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\MSBuild.exe" DiscUtils.sln

我得到了所有51个C#项目:

error MSB4019: The imported project "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\Sdks\Microsoft.NET.Sdk\Sdk\Sdk.props" was not found.
Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.

2 个答案:

答案 0 :(得分:6)

在撰写本文时,VS 2017 Build Tools缺少构建基于SDK(&#34;新世界&#34;)csproj文件所必需的关键组件(具体来说:SDK和集成的NuGet缺失)。

请参阅此GitHub问题以进行跟踪和一些解决方法:https://github.com/Microsoft/msbuild/issues/1697

答案 1 :(得分:5)

简而言之,MSBuild已被破坏,请参阅@Martin Ullrich。

构建用途:

choco install dotnetcore-sdk
& "C:\Program Files\dotnet\dotnet.exe"  restore  DiscUtils.sln
& "C:\Program Files\dotnet\dotnet.exe" msbuild DiscUtils.sln -p:FrameworkPathOverride="c:\Windows\Microsoft.NET\Framework64\v4.0.30319"

如果您不使用Chocolatey,请手动下载.NET Core SDK

如果您没有Visual Studio,则需要

FrameworkPathOverride。 VS解决方案希望在以下位置找到参考组件:

C:\Program Files\Reference Assemblies\Microsoft\Framework\v*

如果没有VS,您可以诉诸c:\Windows\Microsoft.NET\Framework64\v4.0.30319

中的人

请注意,如果解决方案为不同的目标框架生成不同的程序集,并且您需要它们,则需要安装相关的SDK。