多项目解决方案中的Azure Devopspackages.config路径

时间:2019-09-03 13:23:04

标签: azure azure-devops azure-pipelines

我使用Azure Devops管道进行构建和发布。

我有1个解决方案,其中包含多个项目,在nuget软件包还原步骤的构建过程中,我希望它仅还原我部署到的项目的软件包

让我说我有一个名为Main.sln的解决方案

我有2个项目,分别名为project1.csproj和project2.csproj

该版本进展顺利,但要花相当长的时间,因为NuGet还原步骤从Main.sln而不是每个项目中获取每个软件包。

我希望它仅针对特定的packages.config进行还原,而我命令它在nuget恢复设置(/project1/packages.config)中进入

我收到以下错误:

Cannot determine the packages folder to restore NuGet packages. Please specify either -PackagesDirectory or -SolutionDirectory

1 个答案:

答案 0 :(得分:1)

  

多项目解决方案中的Azure Devopspackages.config路径

这是因为默认情况下,nuget软件包会与所选解决方案文件一起还原到converstaion_id文件夹中。

如果我们指定没有解决方案文件的特定/packages / packages.config,则nuget无法确定用于还原NuGet软件包的packages文件夹。

在这种情况下,我们需要手动指定project filePackagesDirectory,以便nuget知道将包存储在何处。

要解决此问题,如果您是用于还原软件包的nuget命令行,则根据错误日志的提示,使用参数SolutionDirectory-PackagesDirectory指定文件夹。

如果您使用的是经典编辑器,则nuget恢复任务有目标目录选项:

enter image description here

您可以指定用于存储软件包的文件夹。

希望这会有所帮助。

相关问题