powershell msbuild找不到Microsoft.WebApplication.targets

时间:2018-02-20 05:35:57

标签: .net powershell msbuild

我安装了2013年,2015年和2017年。 我正在为2015 .NET 4.7.1构建一个PowerShell项目来进行非常特定的部署。 我正在执行以下命令。 $配置是'发布'或者'调试'。

dotnet msbuild /t:rebuild /p:Configuration=$Configuration /p:Platform=x64

..... 我一直收到以下错误:  错误MSB4019:导入的项目" C:\ Program Files \ dotnet \ sdk \ 2.1.4 \ Microsoft \ VisualStudio \ v14.0 \ WebApplications \ Microsoft.WebApplication.targets"没找到。确认声明中的路径是否正确,以及该文件是否存在于磁盘上。 磁盘上不存在这种情况 我从哪里得到它? 它似乎在寻找.NET核心,但我的项目不是.NET核心。我的项目是.NET标准。 我也尝试使用/ t(工具版),但无论我放什么,我都会得到同样的错误。

1 个答案:

答案 0 :(得分:0)

dotnet CLI(" .NET Core SDK")不支持构建非" SDK"项目类型,这是经典的csproj文件和经典的Web应用程序。

虽然一些经典的csproj文件可能有用(特别是仅逻辑的库),但它不适用于许多其他项目类型,它们期望存在仅限VS的文件(例如Microsoft.WebApplication.targets)。

使用visual studio安装的msbuild.exe来构建这些项目。最好启动所需Visual Studio版本的开发人员命令提示符,然后从那里运行(powershell然后)msbuild

如果您需要在构建脚本中运行此功能,请使用vswhere找到VS / Build Tools 2017安装的msbuild.exe