【问题标题】:MSBuild Conditional ImportsMSBuild 条件导入
【发布时间】:2009-07-16 20:24:02
【问题描述】:

在 MSBuild 中有条件导入的解决方法吗?

我发现证据 herehere 详细说明了 MSBuild IDE 界面中的错误。特别是,Import 语句在构建时不会重新加载:

这是一个已知限制。加载项目时,VS 只会处理一次标签。因此,在第一次加载项目时,无论标签处于活动状态(基于您的属性当时具有的任何值)......这就是您在 IDE 中该项目的生命周期中将获得的标签

例如,我可能想根据foo 的值导入barbaz 项目:

<Import Project="bar.targets" Condition="'$(foo)' == 'bar'" />
<Import Project="baz.targets" Condition="'$(foo)' == 'baz'" />

我可以使用解决方法或不同的方法来完成所需的功能吗?

【问题讨论】:

    标签: .net asp.net msbuild import


    【解决方案1】:

    我不认为你可以使用条件导入机制来克服这个问题。你真正想要完成什么?

    赛义德·易卜拉欣·哈希米

    我的书:Inside the Microsoft Build Engine : Using MSBuild and Team Foundation Build

    【讨论】:

      【解决方案2】:

      取决于您的目标文件中的内容,但如果您只是基于 $(foo) 属性设置属性,那么您可以使用预构建事件或预构建目标来完成相同的工作。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-04-11
        • 2012-10-12
        • 2011-04-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-03-04
        • 2014-09-04
        相关资源
        最近更新 更多