在Jenkins构建过程中恢复Telerik的nuget包

时间:2019-05-16 22:35:09

标签: telerik nuget kendo-asp.net-mvc nuget-package-restore

在我的开发机器上,我已经成功配置了Visual Studio作为Telerik的软件包源。根据我们当前的许可,它显示了我们可以下载的最新Telerik.UI.for.AspNet.Core软件包2016.3.1118 (以及其他旧版本) 因此,在开发机器上,我安装了版本2016.3.1118并成功进行了测试。

现在,我正在尝试在Jenkins构建服务器上发布解决方案。 Jenkins执行以下命令来还原软件包并发布

dotnet publish wmp.sln -c Release

但是,我在构建服务器上遇到错误

  

错误NU1102:无法找到具有以下内容的软件包Telerik.UI.for.AspNet.Core:   版本(> = 2016.3.1118)[D:\ Jenkins \ wmp \ workspace \ wmp.sln]
  错误NU1102:-在nuget.org中找到1个版本[最近版本:   2016.3.914] [D:\ Jenkins \ cr-wmp \ workspace \ wmp.sln]

更新1

我使用instructions设置Telerik的Nuget包Feed

(请注意,我确实有另一个使用版本2016.3.914的ASP.NET Core项目。该项目还配置了另一个Jenkins Job for CI。恢复和发布都没有问题)

1 个答案:

答案 0 :(得分:0)

您的错误提示

  

错误NU1102:-在nuget.org中找到1个版本

这意味着它没有检查Telerik的软件包源。您没有确切说明如何添加源,但是鉴于上面引用的消息,并且您说“配置了Visual Studio”,所以我假设您在Visual Studio的“工具”->“选项”中使用了NuGet-> Package Sources UI。不幸的是,NuGet的选项对话框仅支持用户配置文件设置,不支持NuGet的分层设置功能。因此,使用VS UI添加源可以使该资源可用于该计算机上用户帐户上的每个解决方案,但不适用于同一计算机上的其他帐户,或者适用于另一台计算机上的解决方案。

您应该在存储库中创建一个nuget.config,并使用packageSources指定您的软件包来源。如果您的计算机上安装了.NET Core SDK,则可以使用dotnet net nugetconfig从模板创建文件。有了nuget.config,并将配置的软件包源检入源代码存储库后,在CI代理中检出它时,NuGet将知道在还原时检查Telerik的提要。