【问题标题】:Building WIX project with Team Build使用 Team Build 构建 WIX 项目
【发布时间】:2011-01-14 22:58:40
【问题描述】:

我正在使用 WIX 在 TFS 服务器上为我的项目创建 setup.msi。我将 WIX 项目添加到解决方案中。

首先,在我将 WIX 项目添加到我的解决方案之前,Team Build 正在将所有项目程序集输出到我的放置文件夹,这非常好。

但是现在,一旦我添加了安装程序项目,我希望 Team Build 仅将我的 .msi 而不是项目程序集输出到我的放置文件夹。

我想我缺少一些配置设置。你能建议这里可能有什么问题吗?

请多多指教。

团队构建正在输出 .msi 以及所有项目程序集

【问题讨论】:

  • 没有人提出任何解决方案?? :( 各位 TFSBuilders 非常感谢您的友好指导!

标签: tfs wix tfsbuild wix3.5


【解决方案1】:

据我了解,您的构建工作正常。您只希望您的 Build Drop 文件夹包含 MSI 而没有其他文件。

如果使用 Team Build 2008,实现此目的的方法是在您的 TFSBuild.proj 文件中添加一个新的 <Target>,以覆盖内置的 CoreDropBuild 目标。

<Target Name="CoreDropBuild"
    Condition=" '$(IsDesktopBuild)'!='true' and '$(SkipDropBuild)'!='true' "
    DependsOnTargets="$(CoreDropBuildDependsOn)" > 

    <!-- Copy output MSI files -->
    <CreateItem Include="$(BinariesRoot)\**\*.msi" >
        <Output ItemName="FilesToCopy" TaskParameter="Include" />
    </CreateItem> 

    <Copy
        SourceFiles="@(FilesToCopy)"
        DestinationFiles="@(FilesToCopy ->'$(DropLocation)\$(BuildNumber)\%(RecursiveDir)%(Filename)%(Extension)')"
        ContinueOnError="true" /> 

</Target>

【讨论】:

    【解决方案2】:

    据我所知,除了关闭复制到放置位置,然后编写您自己的自定义流程来仅复制您想要的文件之外,没有其他方法可以完成此操作。遵循 Grant 的 Team Build 2008 或 2010 解决方案。对于 TFS2012,您需要创建一个包含此自定义文件副本的自定义模板。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-12-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多