如何在Azure DevOps的CI管道中构建供解决方案使用的外部类库?

PoweredByDoritos

我已向我的团队负责人请求,我们开始将CI / CD管道集成到大多数(如果不是全部)项目中。我们的最新项目在很大程度上依赖于解决方案中引用的我们自己的外部类库;它在“ Dependencies”下作为项目参考。

当我使用Visual Studio 2019在计算机中构建项目时,该项目运行良好,并且在我们需要集成外部库之前,它将使用Azure DevOps管道构建并发布良好的项目。

但是,通过添加外部类库,当我尝试通过Azure DevOps运行生成时,出现以下错误:

找不到项目文件.... csproj。

我完全理解为什么找不到它-因为我需要引入外部类库并首先构建它!除了“ use nuget”以外,似乎没有很多在线材料(不是我仍然可以找到!)来描述解决方案。不幸的是,我的团队负责人要求这不是我们要走的路-这导致了很长的几天!

考虑到这一点,我在Azure DevOps中找不到另一种方法来做到这一点。我已经研究过某种PowerShell命令,但到目前为止仍无济于事。

在使用DevOps中的外部类库之前,是否有人遇到过此问题,并且可以向我提供最佳方法的建议吗?

MichałJarzyna

通常,在99,99%的情况下直接引用该项目并不是一个好主意。在部署过程中,您最终可能会遇到无法维护的CI / CD逻辑和/或dll版本不匹配的情况。实际上,我是该项目的一名架构师,在该项目中,我尝试通过将所有依赖项迁移到NuGet服务器来解决该问题。

蔚蓝神器

您提到,您正在使用Azure DevOps作为主要的CI / CD工具,因此这是一个很好的机会,可以将Azure Artifacts引入作为内部Nuget服务器,它是Azure DevOps的一部分。前2 GB免费,此处有价格明细

备择方案

如果由于某种原因您不能使用Azure Artifacts,我建议您使用一些替代方法:

  • 我的Get
  • ProGet
  • 自己的nuget服务器

您可以在本文中找到有关替代方案的更多信息

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在 Azure DevOps Pipelines 中构建的解决方案中同时使用 xUnit 和 NUnit?

如何在Azure DevOps构建定义中使用多个构建配置(调试,发行版)构建解决方案

如何在Azure DevOps管道中指定解决方案文件

.Net Core解决方案在本地构建,但无法在Azure DevOPS管道上构建

使用 .NET Framework 和 .NET 5 项目的解决方案的 Azure DevOps 构建管道失败

如何在.net解决方案中运行git命令在gitlab中构建管道

Azure DevOps 构建管道:从 MsBuild.exe 解决方案创建 NuGet 包

如何在Azure DevOps管道中管理构建工件?

无法在Azure Devops中仅构建解决方案的一个项目

如何通过VSTS CI管道为解决方案中的每个项目分别发布工件?

使用错误版本的软件包的Azure DevOps构建解决方案

Azure DevOps 使用 GitHub 中的存储库构建管道

如何在 azure devops 管道中使用来自 azure devops 存储库的共享文件

Azure管道可在单个解决方案中构建和发布Web应用程序和Windows服务(在本地)

Azure Devops:在发布模式下构建多项目解决方案,但在调试中寻找缺少的程序集

在带有.NET核心和框架混合解决方案的Azure Devops中,蛋糕构建脚本失败

如何在 Azure Devops 发布管道中为已构建的 APK 重新签名/更改包 ID

如何在Azure Devops中为多模块Maven创建构建管道

如何在 Azure DevOps 的构建管道中启用 Ouath 身份验证

如何在Azure Devops构建管道中绕过UWP App认证?

我们如何在Azure DevOps构建管道中读取GIT提交消息?

如何在 Azure DevOps 中获取正在进行的管道的构建 ID

如何在Azure Devops上使用条件图像标签来构建Yaml管道?

如何配置 Jenkins 以使用 Qt 构建解决方案?

如何使Visual Studio使用FAKE构建我的解决方案?

如何在Azure DevOps中限制对管道的访问

如何在Azure DevOps管道中安装Java?

如何在 Azure Devops 中的发布管道上触发 STDERR

如何在Azure DevOps发布管道中建立连接帐户