使用 Azure Devops 和共享库的 MSBuild

丹尼斯

我有一个解决方案,我要迁移到 Azure Devops 管道,但在弄清楚如何使用共享项目时遇到了麻烦。所以这是场景。我有 3 个项目 Common.csproj、A.csproj 和 B.csproj。Common 用于两个项目。A 和 B 通过我的解决方案中的项目引用引用 Common。

<ItemGroup>
  <ProjectReference Include="..\Common\Common.csproj">
    <Project>{40838373-5284-4073-86e5-9bf4e1bfb855}</Project>
    <Name>Common</Name>
  </ProjectReference>
</ItemGroup>

我已将 Common 项目移至它自己的 git repo 并有一个构建管道,该管道在最后发布构建工件 dll。

在我的项目 AI 管道中,我正在尝试下载该 Common 构建工件并使用 msbuild 引用它,但还没有弄清楚如何去做。是否有一个命令行参数可以直接引用程序集,还是我以错误的方式思考这个问题?

Leo Liu-MSFT

是否有一个命令行参数可以直接引用程序集,还是我以错误的方式思考这个问题?

恐怕没有这样的命令行参数可以直接引用程序集。那是因为我们无法在构建过程中添加引用,Visual Studio/MSBuild 是一种预编译机制,它在构建之前获取所有引用程序集路径。

因此,要解决此问题,您应该在构建参考项目 A 和 B 之前添加参考。您可以使用项目参考构建解决方案,而不是使用 dll 文件构建项目 A、B。

此外,如果您仍然单独使用 Common 项目作为 dll 文件,您可以尝试使用nuget

一些步骤:

  • 生成 Common 项目,将其打包为 nuget 包并将 nuget 包发布到 Azure Devops Artifact。
  • 使用 Visual Studio 将 nuget 包安装到本地的项目 A 和 B。
  • 使用 Azure Devops 生成项目 A 和 B 时,使用 nuget 还原任务还原 nuget 包。

有关更多详细信息,请查看Azure DevOps Services 和 TFS 中的 NuGet 包入门文档希望这可以帮助。

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

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

从 Jupyter Notebooks 使用 Azure Devops python 库

如何使用Azure CLI创建Azure DevOps存储库

生成期间 Azure DevOps MSBuild 重命名文件

使用 node js 和 azure-devops-node-api 下载 Azure DevOps 工作项附件

结合使用新的Visual Studio Online和Azure DevOps存储库

Azure Devops 使用存储库名称获取 repositoryId

在MacOS上使用SourceTree连接到Azure Devops存储库

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

使用 REST API 下载 Azure Devops 存储库的存档

使用Rest API从Azure Devops存储库获取文件

使用保管库机密转换 Azure DevOps 文件

使用Azure DevOps管道和版本部署Virtual Assistant

Azure DevOps-在PowerShell脚本中设置和使用变量

使用SonarCloud和Azure DevOps分析Javascript / Typescript项目

使用OAuth和PowerShell更新Azure DevOps Wiki页面

Azure Devops 中输出变量的声明和使用

使用Azure DevOps Classic生成管道和TFVC管理分支

与 Azure DevOps Server 2020 共享 Azure DevOps 门户

将Azure DevOps Services与Azure DevOps本地存储库和构建/发行版一起使用。那可行吗?

通过使用Azure工件的Azure Devops组织共享NPM脚本/应用程序

Azure DevOps WebExtension使用WebWorker

如何使用Azure DevOps发布?

使用 Azure DevOps 进行报告

DevOps (Azure) 存储库配置

Azure DevOps存储库的备份

Azure DevOps存储库以更新Azure DevOps板

如何将Azure DevOps Git存储库与Azure静态Web应用一起使用?

Azure DevOps和Outlook集成