首页 > 解决方案 > 无法在服务器上部署具有 nuget 引用的应用程序

问题描述

我很难在服务器上部署我的第一个带有 nuget 引用的 .net 核心应用程序。在本地,该应用程序运行良好(能够使用 nuget 包)。

显然,没有packages.config。我正在使用 Dapper、Newtonsoft.Json 等。项目在哪里存储对这些包的引用?没有包文件夹。

在解决方案文件夹中,有一个 nuget.config 文件,由于某种原因它是空的。

我应该在这里添加什么

在此处输入图像描述

标签: azureasp.net-coreazure-devopsnuget

解决方案


无法在服务器上部署具有 nuget 引用的应用程序

那是因为您在构建管道中使用的是旧版本的 nuget restore 任务,它只支持包管理类型packages.confignot PackageReference.

这就是为什么旧版本任务要求您提供packages.config. 是PackageReference后续产品,所以之前版本的nuget restore task不支持。

查看博客了解更多详细信息。

要解决此问题,请使用nuget restore 任务的V2 :

在此处输入图像描述

笔记:

  • 需要nuget.exe PackageReference4.1及以上版本,请添加NuGet工具安装程序安装nuget以上版本4.1
  • 使用 .NET Core 还原任务也应该适用于这个问题。

更新:

是的,使用 TFS 2016

由于您使用的是 TFS 2016,因此您可以尝试使用命令行调用 nuget.exe 来恢复包,而不是使用 nuget 安装程序任务:

在此处输入图像描述

从nuget.org下载4.0以上的nuget.exe,然后设置在TFS服务器上。

希望这可以帮助。


推荐阅读