【问题标题】:Incorrect build order for Wix when using MsBuild使用 MsBuild 时 Wix 的构建顺序不正确
【发布时间】:2019-05-10 20:46:54
【问题描述】:

我为我的 .Net 应用程序(使用 Wix 3.11.1)创建了一个 Wix 设置项目,其中包含文件、快捷方式、自定义 UI、自定义操作等。

解决方案本身包含大量 .csproj-s、Wix setup 项目和一个 Wix Custom Action 项目。

当我从 Visual Studio(2010 年,迈向 2017 年)构建它时,构建似乎是正确的,我得到“构建成功”。

但是,我的自动构建脚本(它会清理解决方案,然后针对解决方案运行 MsBuild)失败,因为 Wix 设置项目是在自定义操作项目之前构建的。

自定义构建脚本很简单:

MsBuild.exe .\<solutionname>.sln /target:Rebuild /property:Configuration=<config> /property:Platform=<platform>

我尝试添加对指向 CA 项目的 Wix 安装项目的引用,希望该引用会告诉 MsBuild 先构建 CA 项目,然后再构建安装项目。没用。

如果我再次运行相同的构建脚本(现在已经构建了 CA 项目)脚本构建成功。

我可以告诉 MsBuild 以正确的顺序构建项目吗?

我目前正在使用来自 .Net FW 4.0 的 MsBuild (%windir%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe)

有什么想法吗?

【问题讨论】:

  • 您是否将 CA 项目的引用添加为 ProjectReference?这应该有效。
  • 是的,我做到了,但没有解决问题。

标签: c# msbuild wix


【解决方案1】:

这里有一个解决方案(请参阅投票率最高的评论“这是一个错误、错误、错误......”。 Why does Tfs2010 build my Wix project before anything else?

简而言之:您需要使用文本编辑器在解决方案文件中重新排序您的项目。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-22
    • 1970-01-01
    • 2012-12-08
    • 1970-01-01
    • 2015-08-15
    • 1970-01-01
    • 2019-12-19
    相关资源
    最近更新 更多