【发布时间】:2017-10-19 02:31:01
【问题描述】:
我正在尝试将我们的构建服务器 (jenkins) 从 Visual Studio 2015 升级到 2017。我们正在通过 MS-Build 构建。我已经按照answer 中的说明下载并安装了 MS-Buld 工具。如果我编译我的项目,我会收到一个错误,指出找不到 Microsoft.WebApplication.targets。
详细错误:
error MSB4226: The imported project "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\Microsoft\VisualStudio\v15.0\WebApplications\Microsoft.WebApplication.targets"
我在 MS-Build 目录中进行了查找:
PS C:\Program Files (x86)\MSBuild> dir -Recurse -Filter "Microsoft.WebApplication.targets"
Directory: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 11.01.2012 00:23 19654 Microsoft.WebApplication.targets
Directory: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\WebApplications
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 22.07.2013 01:25 19995 Microsoft.WebApplication.targets
Directory: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\WebApplications
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 06.07.2015 21:55 20118 Microsoft.WebApplication.targets
Directory: C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\WebApplications
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 22.07.2013 01:25 19995 Microsoft.WebApplication.targets
可以看出,旧编译器版本的文件存在,但对于 v15.0,它丢失了。
我还在构建服务器上安装了 Visual Studio 2017。如果我使用 Visual Studio 2017 编译,项目将成功构建。
任何提示如何解决这个问题?一种可能的解决方案是生成从C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v15.0\WebApplications 指向旧v14.0 文件(位于C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\WebApplications 下)的符号链接。
谢谢
【问题讨论】:
-
我在使用 VS 2019 的项目中遇到了这个问题。我如何通过打开 csproj 文件来解决这个问题,并确定
并替换为
标签: visual-studio msbuild