使用自定义nuget包更新Post-Build

时间:2016-12-21 16:37:26

标签: visual-studio events msbuild nuget

我需要帮助才能通过自定义nuget包更新项目的构建后事件。

由于包含.targets文件的nuspec文件,我创建了一个包:

<file src="*.targets" target="build"/>

这是.targets文件:

<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <Target Name="AfterBuild" AfterTargets="Build" >
      <Message Text="Hello World" Importance="high" />    
    </Target>
</Project>

实际上,当我安装软件包时会读取文件(如果我删除一些'&gt;',我就会出错)。 但是.csproj没有更新(因此,在后期构建事件文本框中没有任何内容)。

我错过了什么吗?

1 个答案:

答案 0 :(得分:1)

我同意马特沃德的观点。从NuGet 2.5开始,NuGet识别出一个新的顶级文件夹:\ build。

  

在\ build文件夹中,您可以提供“.props”文件和/或   “.targets”文件将自动导入到项目中。   对于此约定,文件名必须与您的包ID 匹配   “.props”或“.targets”扩展名。

请参阅以下文档中的MSBuild集成部分:

http://blog.nuget.org/20130426/native-support.html

安装软件包后,您将在.csproj中看到导入package.targets文件的导入节点。然后在构建项目时,您将在输出窗口中看到“Hello World”文本。 enter image description here