我有一个解决方案,我要迁移到 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 引用它,但还没有弄清楚如何去做。是否有一个命令行参数可以直接引用程序集,还是我以错误的方式思考这个问题?
是否有一个命令行参数可以直接引用程序集,还是我以错误的方式思考这个问题?
恐怕没有这样的命令行参数可以直接引用程序集。那是因为我们无法在构建过程中添加引用,Visual Studio/MSBuild 是一种预编译机制,它在构建之前获取所有引用程序集路径。
因此,要解决此问题,您应该在构建参考项目 A 和 B 之前添加参考。您可以使用项目参考构建解决方案,而不是使用 dll 文件构建项目 A、B。
此外,如果您仍然单独使用 Common 项目作为 dll 文件,您可以尝试使用nuget。
一些步骤:
有关更多详细信息,请查看Azure DevOps Services 和 TFS 中的 NuGet 包入门文档。希望这可以帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句