1

我已经安装了 VS 2017 并开始使用 MSBuild 15 构建我的解决方案。我立即注意到我的before.{SolutionName}.sln.targets文件都没有加载。

我用 ProcMon 进行了检查,文件已打开并无错误地读取。但是他们的动作都没有运行。

有没有人遇到过这种情况?欢迎任何帮助。

编辑 1

这是我的文件:

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Restore">
  <Target Name="Restore" BeforeTargets="Build;Rebuild">
    <MSBuild Projects=".nuget\NuGet.Targets" Targets="RestoreSolutionPackages" Properties="SolutionFile=..\$(MSBuildProjectName);NuGetVerbosity=$(NuGetVerbosity)"/>
  </Target>
</Project>

它在 VS 2015 中工作,但在 VS 2017 中停止工作。

4

1 回答 1

2

我弄清楚了问题所在。VS 2017 在生成的 sln.metaproj 文件中引入了一个新目标——Restore这个目标在before.{SolutionFile}.sln.targets文件中掩盖了我自己的目标。

一旦我将目标重命名为MyRestore它,它就会再次起作用。

浪费了3个小时:-(。

于 2018-10-29T03:27:43.260 回答