【问题标题】:Build hangs while building Wix Installer构建 Wix 安装程序时构建挂起
【发布时间】:2020-05-22 23:20:31
【问题描述】:

我有一个构建设置,最后会构建一个 Wix 项目来为我的应用程序创建一个 MSI。当我尝试运行构建时,它会进入链接步骤并挂起大约一个小时,然后才被取消。没有错误信息或任何可以解释可能发生的情况的信息。它挂起的日志是:

Link:
  C:\Program Files (x86)\WiX Toolset v3.11\bin\Light.exe -out D:\a\1\s\myapplication.msi -pdbout D:\a\1\s\myapplication.wixpdb -cultures:null -ext "C:\Program Files (x86)\WiX Toolset v3.11\bin\\WixUtilExtension.dll" -ext "C:\Program Files (x86)\WiX Toolset v3.11\bin\\WixUIExtension.dll" -ext "C:\Program Files (x86)\WiX Toolset v3.11\bin\\WixNetFxExtension.dll" -sice:ICE30 -sice:ICE80 -contentsfile obj\Release\Installer.wixproj.BindContentsFileListnull.txt -outputsfile obj\Release\Installer.wixproj.BindOutputsFileListnull.txt -builtoutputsfile obj\Release\Installer.wixproj.BindBuiltOutputsFileListnull.txt -wixprojectfile D:\a\1\s\Installer.wixproj obj\Release\pthC2B68370CAB72F5041F3FBDF89753BBA\ActionsAndSequences.wixobj obj\Release\pthC2B68370CAB72F5041F3FBDF89753BBA\LangComponents.wixobj obj\Release\pthC2B68370CAB72F5041F3FBDF89753BBA\Upgrades.wixobj obj\Release\pthF392250A412040E3E7164BEF9B45533D\ClientUIFlow.wixobj obj\Release\pthF392250A412040E3E7164BEF9B45533D\OldClientWarningDlg.wixobj obj\Release\pthF392250A412040E3E7164BEF9B45533D\SetServicesUrlDlg.wixobj obj\Release\pthC2B68370CAB72F5041F3FBDF89753BBA\Components.wixobj obj\Release\Product.wixobj
  Windows Installer XML Toolset Linker version 3.11.2.4516
  Copyright (c) .NET Foundation and contributors. All rights reserved.

我使用的配置是:

- task: MSBuild@1
      displayName: 'Building Installer'
      inputs:
        solution: '/path/to/solution'
        platform: 'x86'
        configuration: 'Release'
        msbuildArguments: >
          /target:Build

我尝试更改一些选项,例如 tagret 和配置,但没有成功。如果我在本地运行基本相同的命令,构建 Wix 项目大约需要 20 秒。到底是怎么回事?有什么方法可以找出导致此步骤挂起的原因吗?

编辑

埃里克在下面的回答解决了这个问题。对于可能遇到此问题的任何人,我的最终配置如下:

- task: MSBuild@1
      displayName: 'Building Installer'
      inputs:
        solution: '/path/to/solution'
        platform: 'x86'
        configuration: 'Release'
        msbuildArguments: >
          /target:Build
          /p:RunWixToolsOutOfProc=true

【问题讨论】:

    标签: azure-devops msbuild azure-pipelines


    【解决方案1】:

    尝试添加这个额外的MSBuild argument/p:RunWixToolsOutOfProc=true

    这里有一些背景wixtoolset github,看起来像underlining issue is fixed,只是还没有在主线中。

    【讨论】:

    • 看起来你对这个问题是正确的。您的第二个链接与我们看到的问题完全相同,并添加了 MSBuild Argument 使我们的构建停止冻结。非常感谢您分享!
    • 如果你使用VSBuild@1而不是MSBuild@1,你需要另一个(类似的)任务输入参数:msbuildArgs:
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多