我正在研究一些我继承的东西,这些东西的项目结构有点凌乱。一些项目引用了预期安装在 GAC 中的主互操作程序集 (PIA)。解决方案文件夹中有一条注释(总结)“在构建此项目之前,首先构建 X、Y 和 Z 并在 GAC 中手动安装它们”。嗯,这并不真正有利于自动化或持续集成,是吗?
我想让这个构建在 TeamCity 构建服务器上工作,构建代理将在没有在全局程序集缓存 (GAC) 中安装 PIA 的机器上运行。所以构建会失败。我不想在每台构建代理机器上都安装这些 PIA,我需要构建是自包含的,因此它可以从干净的源代码签出构建,轻松搞定。所以这个问题是双重的。
- 如果对 GAC 有任何依赖关系,我如何构建构建以使其自包含并且不会中断?
- 如果 (1) 成功,这将如何影响部署到最终用户桌面,必须将 PIA 安装到 GAC?
我会感谢 Stack Overflow 社区的专家建议。