Azure Pipeline - C# 构建项目取决于另一个存储库中的另一个项目
Posted
技术标签:
【中文标题】Azure Pipeline - C# 构建项目取决于另一个存储库中的另一个项目【英文标题】:Azure Pipeline - C# Build project depending on another project in another repository 【发布时间】:2022-01-23 02:42:56 【问题描述】:我有以下情况: 关于 AzureDevops:
项目 A - 存储库 A
Module3/Module3.csproj
Module1/Module1.csproj
Module2/Module2.csproj
Module1/Module1.csproj
- Solution.sln
项目 B - 存储库 B
ModuleCore/ModuleCore.csproj
-ModuleCore.sln
ModuleCore 已添加到多个项目中。
在 VisualStudio 中,当我们要编译 project A 时,我将 ModuleCore.csproj 添加为现有项目,编译工作。
我已经在 azure devops 上完成了几个管道,项目之间没有依赖关系,但是我遇到了困难。
当我尝试构建时,它找不到 ModuleCore 并中断。
我目前的构建任务是:
- task: VSBuild@1
inputs:
solution: '$(solution)'
msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.ArtifactStagingDirectory)"'
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'
如何构建 Project A 并将 Project B 链接为依赖项? 还有其他方法可以在管道中执行此构建吗?
【问题讨论】:
【参考方案1】:由于 Modulecore 正在多个项目中使用,假设它是一个库,最好将其添加到 nuget(组织级别)存储库并在构建主解决方案时恢复它。
【讨论】:
感谢 S Rao,我将通过 Nuget 尝试。以上是关于Azure Pipeline - C# 构建项目取决于另一个存储库中的另一个项目的主要内容,如果未能解决你的问题,请参考以下文章
Azure Pipeline - 构建中缺少一个 csproj
如何使用 Azure Pipeline 将 Docker 映像“推送”到 Azure 容器注册表?
Azure DevOps Pipeline构建代理:如何在程序集引用HintPath中使用或替换$(DevEnvDir)?
Azure Pipeline 中的简单 Appium 测试 - 如何修复失败的构建步骤 (vstest)?