1

我有 2 个产品 A 和 B 作为我们的一个项目的一部分...我们使用 wix 安装程序...安装程序代码是使用 Visual Studio 2008 用 C# 编写的,我们在构建或使用这些方面没有问题安装程序。

最近,我们决定实施一个自动构建系统 (Jenkins),我们可以在其中自动构建产品以及它们的安装程序。

当我们从 jenkins 进行构建时,产品 A 的安装程序构建失败。它说 - “Microsoft 命名空间中不存在命名空间“部署””。以及许多其他依赖项都失败了。有趣的是,在同一台机器上从 Visual Studio 完成的相同构建工作......但通过詹金斯完成时失败。

我们以管理员用户身份运行所有这些。不确定 jenkins 是否在访问“Microsoft.Deployment”时遇到问题?

我尝试重新安装 wix 框架(以确保 jenkins 没有访问一些损坏的安装程序或部署 dll)并添加了对“Microsoft.Deployment”的明确引用......但没有帮助。

此外,同样在同一台机器上的其他产品 B 的安装程序运行没有问题。

关于什么可能是错的任何建议?

4

1 回答 1

1

听起来您已经随 Visual Studio 一起安装了WiX 工具集。这将自动安装 DTF,这听起来像是您在 Jenkins 构建中缺少的先决条件。要获得 DTF,您可以在构建机器上安装 WiX 工具集,或者恕我直言,更好的选择是将 WiX 工具集检查到源代码控制中。WiX 手册中有一个主题提供分步说明,称为将 WiX 项目集成到日常构建中以执行后者。

如果您将 WiX 工具集签入到您的构建中,您可能需要更新一些现有引用以指向 WiX 工具集的本地副本。

于 2013-05-08T05:15:57.350 回答