MSBuild 在错误的位置查找 Microsoft.VisualBasic.Core.targets
MSBuild looking in wrong place for Microsoft.VisualBasic.Core.targets
我正在设置一个新的 TeamCity 构建代理。 运行 在现有代理上运行良好的几个构建配置在新代理上失败,出现如下错误(为清楚起见添加了空格):
[22:14:32][someproject.vbproj]
C:\Program Files (x86)\Microsoft Visual Studio17\Professional\MSBuild.0\bin\Microsoft.VisualBasic.CurrentVersion.targets(322, 5):
error MSB4019: The imported project
"C:\Program Files (x86)\Microsoft Visual Studio17\Professional\MSBuild.0\bin\Roslyn\Microsoft.VisualBasic.Core.targets"
was not found.
Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
注意 "The imported project" 之后第三行的路径。错误是正确的;该文件夹确实存在,但该文件不存在。然而 Microsoft.VisualBasic.Core.targets 文件 确实 存在于稍微不同的路径
C:\Program Files (x86)\Microsoft Visual Studio17\BuildTools\MSBuild.0\Bin\Roslyn\Microsoft.VisualBasic.Core.targets
是否有解决此问题的简单方法,也许是告诉 MSBuild 在哪里查找的注册表项?
原因
- 在您的机器上,安装了两个 VS 2017 副本,专业版和原始构建工具。
- 您没有为 Professional 安装 VB 位,而为 Build Tools 安装了
- TeamCity 更喜欢专业版的 MSBuild。
综合以上,问题就出现了。
修复
您应该强制 TeamCity 使用 Build Tools 中的 MSBuild,或者将 VB 添加到您的 VS Pro 安装中。
参考
https://blog.lextudio.com/the-rough-history-of-msbuild-cc72a217fa98
我正在设置一个新的 TeamCity 构建代理。 运行 在现有代理上运行良好的几个构建配置在新代理上失败,出现如下错误(为清楚起见添加了空格):
[22:14:32][someproject.vbproj]
C:\Program Files (x86)\Microsoft Visual Studio17\Professional\MSBuild.0\bin\Microsoft.VisualBasic.CurrentVersion.targets(322, 5):
error MSB4019: The imported project
"C:\Program Files (x86)\Microsoft Visual Studio17\Professional\MSBuild.0\bin\Roslyn\Microsoft.VisualBasic.Core.targets"
was not found.
Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
注意 "The imported project" 之后第三行的路径。错误是正确的;该文件夹确实存在,但该文件不存在。然而 Microsoft.VisualBasic.Core.targets 文件 确实 存在于稍微不同的路径
C:\Program Files (x86)\Microsoft Visual Studio17\BuildTools\MSBuild.0\Bin\Roslyn\Microsoft.VisualBasic.Core.targets
是否有解决此问题的简单方法,也许是告诉 MSBuild 在哪里查找的注册表项?
原因
- 在您的机器上,安装了两个 VS 2017 副本,专业版和原始构建工具。
- 您没有为 Professional 安装 VB 位,而为 Build Tools 安装了
- TeamCity 更喜欢专业版的 MSBuild。
综合以上,问题就出现了。
修复
您应该强制 TeamCity 使用 Build Tools 中的 MSBuild,或者将 VB 添加到您的 VS Pro 安装中。
参考
https://blog.lextudio.com/the-rough-history-of-msbuild-cc72a217fa98