gpt4 book ai didi

c++ - MSBuild BeforeBuild 步骤

转载 作者:太空狗 更新时间:2023-10-29 20:58:45 24 4
gpt4 key购买 nike

我昨天问了关于让 AfterBuild 工作的问题,并且能够通过将它放在 Project 部分的最底部来让它工作:MSBuild AfterBuild Step

我在不同的项目中尝试过完全相同的事情。这是我的 BeforeBuild 代码:

<Target Name="BeforeBuild">
<Message Text="###HI###" Importance="High" />
</Target>

我在项目中的 Target Name="BeforeBuild" 之前没有另一个,我将它放在 Project 部分的最底部。 .vcxproj 正在毫无问题地解析/加载到 Visual Studio 2010 中。我将“MSBuild 项目构建输出/日志详细程度”设置为“正常”。

还有什么我没有想到的会导致它无法运行吗?

最佳答案

除非显式调用,否则目标不会被调用,它是默认目标,在被调用目标的 DependsOn 中声明,或者声明其自己的 BeforeTargets 或 AfterTargets 并且其中一个目标被调用。

因此,如果您希望在名为“InitializeBuildStatus”的目标之前调用一个目标,您可以这样写:

<Target Name="MyBeforeBuild" BeforeTargets="InitializeBuildStatus">
<Message Text="###HI###" Importance="High" />
</Target>

如果“InitializeBuildStatus”目标运行,它将运行。 (您可以在 Visual Studio 中或为 MSBuild 运行启用详细日志记录,以帮助确定适当的 BeforeTarget 目标。)

“BeforeBuild”和“AfterBuild”目标被微软某些项目类型的目标系统显式调用。这仅提供有限的可扩展性。较新的 (.NET 4.0) 方法是 BeforeTargets 和 AfterTargets。

参见 Target Build Order .

关于c++ - MSBuild BeforeBuild 步骤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26789417/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com