【发布时间】:2017-04-06 07:30:46
【问题描述】:
我从 (https://github.com/Microsoft/msbuild) 克隆了 MSBuild 源代码,并按照以下步骤构建项目。
使用 Visual Studio 2017 构建 MSBuild
- 安装 Visual Studio 2017。
- 克隆源代码
- 使用 cibuild.cmd 脚本构建代码
- 打开 src/MSBuild.sln 解决方案并在 Visual Studio 2017 中构建
但是当我们尝试从 VS 2017 构建时,构建失败并出现以下错误
找不到导入的项目“C:\msbuildgit\msbuild\packages\Nerdbank.GitVersioning\1.5.46\build\dotnet\Nerdbank.GitVersioning.targets”。确认声明中的路径正确,并且该文件存在于磁盘上。 Microsoft.Build.CommandLine.UnitTests
找不到导入的项目“C:\msbuildgit\msbuild\packages\Nerdbank.GitVersioning\1.5.46\build\dotnet\Nerdbank.GitVersioning.targets”。确认声明中的路径正确,并且该文件存在于磁盘上。 Microsoft.Build.Engine.OM.UnitTests
以下项目也没有加载
Microsoft.Build ,Microsoft.Build.Framework,Microsoft.Build.Tasks Microsoft.Build.Utilities,MSBuildTaskHost
当我们尝试重新加载以上项目时出现以下错误
C:\msbuildgit\msbuild\src\Build\Microsoft.Build.csproj:错误:导入的项目“C:\msbuildgit\msbuild\packages\Nerdbank.GitVersioning\1.5.46\build\dotnet\Nerdbank.GitVersioning .targets”没有找到。确认声明中的路径正确,并且该文件存在于磁盘上。 C:\msbuildgit\msbuild\src\dir.targets
已尝试以下选项,但都失败了
- 尝试恢复 nuget 包
- 尝试安装 Nerdbank.GitVersioning nuget(https://www.nuget.org/packages/Nerdbank.GitVersioning/)
请注意 cibuild.cmd 脚本已经执行
请帮助我们。
【问题讨论】:
-
建议在 msbuild repo 中创建问题
-
在创建构建服务器时,我有时会遇到丢失的 .targets 文件。可悲的是,我唯一想到的是实际找到目标文件并将其手动放在该位置的构建服务器上。现在,通常该目标文件位于安装了 Visual Studio 的开发人员框中(构建服务器使用 msbuild.exe 并且没有安装 vs)。因此,虽然它很臭,但我建议尝试找到目标文件并将它们放在错误表明它应该作为短期解决方案的位置。然后在您获得代码/说明的网站上发布问题。
标签: msbuild .net-core visual-studio-2017