VS2017的MSBuild无法编译.NET Standard 2.0项目
MSBuild of VS2017 cannot compile .NET Standard 2.0 project
我有一个针对 .NET Framework 4.6.1 和 .NET Standard 2.0 的 csproj。
可以在我的本地机器上用Visual Studio 2017 (v15.3.2)编译
现在我正在设置我们的构建服务器 (Jenkins) 来包含这个项目。我们的构建服务器适用于其他 .NET Framework 4.6.1 项目。
首先,我将工具链从本地计算机 (C:\Program Files (x86)\Microsoft Visual Studio17\Enterprise\MSBuild\
) 复制到构建服务器。
然后我将 Jenkins 配置为使用从 C:\Program Files (x86)\Microsoft Visual Studio17\Enterprise\MSBuild.0\Bin\MSBuild.exe
复制的 MSBuild v15.3.409.57025
但是编译时出现如下错误
C:\Program Files
(x86)\MSBuild\Sdks\Microsoft.NET.Sdk\build\Microsoft.NET.TargetFrameworkInference.targets(126,5):
error : The current .NET SDK does not support targeting .NET Standard
2.0. Either target .NET Standard 1.6 or lower, or use a version of the .NET SDK that supports .NET Standard 2.0.
文件 Microsoft.NET.TargetFrameworkInference.targets
也是从我的本地计算机 C:\Program Files (x86)\Microsoft Visual Studio17\Enterprise\MSBuild\Sdks\Microsoft.NET.Sdk\build\Microsoft.NET.TargetFrameworkInference.targets
复制的。我在我的本地机器上查看了它的内容,并在下面看到了一行。
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
ToolsVersion
还在我的VS2017目录中14.0
?
有人知道怎么解决吗?
谢谢
您还需要安装 .NET Core 2.0.0 SDK,因为 VS 安装仅包括 1.1.0
任务和目标,并寻找与当前 msbuild 版本兼容的其他已安装版本(或那里是项目中固定不同版本的 global.json 文件。
我有一个针对 .NET Framework 4.6.1 和 .NET Standard 2.0 的 csproj。
可以在我的本地机器上用Visual Studio 2017 (v15.3.2)编译
现在我正在设置我们的构建服务器 (Jenkins) 来包含这个项目。我们的构建服务器适用于其他 .NET Framework 4.6.1 项目。
首先,我将工具链从本地计算机 (C:\Program Files (x86)\Microsoft Visual Studio17\Enterprise\MSBuild\
) 复制到构建服务器。
然后我将 Jenkins 配置为使用从 C:\Program Files (x86)\Microsoft Visual Studio17\Enterprise\MSBuild.0\Bin\MSBuild.exe
但是编译时出现如下错误
C:\Program Files (x86)\MSBuild\Sdks\Microsoft.NET.Sdk\build\Microsoft.NET.TargetFrameworkInference.targets(126,5): error : The current .NET SDK does not support targeting .NET Standard 2.0. Either target .NET Standard 1.6 or lower, or use a version of the .NET SDK that supports .NET Standard 2.0.
文件 Microsoft.NET.TargetFrameworkInference.targets
也是从我的本地计算机 C:\Program Files (x86)\Microsoft Visual Studio17\Enterprise\MSBuild\Sdks\Microsoft.NET.Sdk\build\Microsoft.NET.TargetFrameworkInference.targets
复制的。我在我的本地机器上查看了它的内容,并在下面看到了一行。
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
ToolsVersion
还在我的VS2017目录中14.0
?
有人知道怎么解决吗?
谢谢
您还需要安装 .NET Core 2.0.0 SDK,因为 VS 安装仅包括 1.1.0
任务和目标,并寻找与当前 msbuild 版本兼容的其他已安装版本(或那里是项目中固定不同版本的 global.json 文件。