msbuild 15在解决方案目标之前是否支持



我已经安装了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=".nugetNuGet.Targets" Targets="RestoreSolutionPackages" Properties="SolutionFile=..$(MSBuildProjectName);NuGetVerbosity=$(NuGetVerbosity)"/>
</Target>
</Project>

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

我发现了问题所在。VS 2017在生成的sln.metaproj文件Restore中引入了一个新目标,这个目标在before.{SolutionFile}.sln.targets文件中盖过了我自己的目标。

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

浪费了3个小时:-(.

最新更新