【问题标题】:Pre-build event to run before any project in a solution is built在构建解决方案中的任何项目之前运行的预构建事件
【发布时间】:2011-08-11 17:08:56
【问题描述】:

我编写了一个小程序来下载所有 NuGet 包以获得解决方案。我想设置一个预构建事件,每次构建时都会运行该程序。

但我需要在第一个项目开始构建之前运行它。我可以先查看当前正在构建的内容,然后将其放在该项目的预构建事件中,但这相当脆弱。每当我添加新项目或更新项目之间的引用时,我都必须仔细检查“第一个”构建项目是否仍然是第一个。

所以,我真正需要的是在任何建筑物真正开始之前做到这一点的方法。我听说过 Visual Studio 宏。但这些不是签入的东西,所以我宁愿不使用它们(但如果这是我唯一的选择,我会使用它们)。

【问题讨论】:

    标签: visual-studio visual-studio-2010 solution prebuild pre-build-event


    【解决方案1】:

    你可以试试这个:http://sedodream.com/2010/10/22/MSBuildExtendingTheSolutionBuild.aspx

    不幸的是,它只能通过 MSBuild 从命令行调用。似乎是行为不同的设计缺陷,并且这些事件无法通过 IDE 获得。

    您还可以修改基本 MSBuild 任务以包含基于特定标志/文件存在/解决方案名称的操作,但这是各种邪恶。

    否则,您将很难在每个项目上进行预构建。

    【讨论】:

      【解决方案2】:

      对于任何使用 nuget 包的项目,我都会从 prebuild 事件中调用 nuget install。只下载尚未下载的包就足够聪明了。

      【讨论】:

        猜你喜欢
        • 2011-01-18
        • 2011-06-07
        • 1970-01-01
        • 1970-01-01
        • 2010-12-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多