2017-05-03 45 views
5

我安装了构建于Visual Studio 2017年工具,并试图建立DiscUtils solution有:的MSBuild:引进项目...... Sdk.props未发现

& "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. 
+0

呃,等等,你从哪里得到这个?在RC版本中有一个“用于VS2017的构建工具”,但它仅用于C++构建,并且他们决定不将它包含在RTM版本中。 Google也很难受。所以总的来说,失败是预期的结果。 –

+0

@HansPassant:我用: https://www.visualstudio.com/downloads/ - >其他工具和框架 - >构建工具为Visual Studio 2017年 我选择了单独的组件 - > C#和Visual Basic编译器罗丝琳。 也许这些不是合适的编译器,是吗? – antonio

+0

看起来合法。可能不会,请注意它是如何面向C++的。但奇怪的是它提供了Roslyn。帮助>发送反馈>报告问题是您最好的选择。 –

回答

4

在短的MSBuild坏了,看到@马丁乌尔里希。

要建立使用:

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" 

如果你不使用的巧克力,手动下载.NET Core SDK

FrameworkPathOverride是必要的,如果你没有的Visual Studio做。 VS解决方案,希望能够找到在参考组件:

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

没有VS,你可以求助于那些c:\Windows\Microsoft.NET\Framework64\v4.0.30319

需要注意的是,如果解决方案,为不同的目标框架产生不同的装配和你需要的时候,你需要安装相关的SDK。

6

在撰写本文时,VS 2017构建工具缺少构建基于SDK(“新世界”)csproj文件(具体而言:缺少SDK和集成NuGet)所必需的关键组件。

参见跟踪这个问题的GitHub和一些解决方法:https://github.com/Microsoft/msbuild/issues/1697