【问题标题】:Restoring telerik's nuget package during Jenkins build在 Jenkins 构建期间恢复 Telerik 的 nuget 包
【发布时间】:2019-05-16 22:35:09
【问题描述】:

在我的开发机器上,我已经成功地为 Telerik 的包源配置了 Visual Studio。根据我们当前的许可证,它显示了我们可以下载的最新的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 Package Feed

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

【问题讨论】:

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


    【解决方案1】:

    你的错误说

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

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

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

    【讨论】:

    • 谢谢。如果我不想在构建服务器上配置 Telerik 的包源,我可以将包从本地机器复制到构建服务器到`C:\Users\{username}\.nuget\packages\Telerik.UI。 for.AspNet.Core` 文件夹? (我试过了,但没有用。可能我需要做一些额外的设置吗??)
    • @LP13 你好,你能解决这个问题吗?如果有,怎么做?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-07
    • 1970-01-01
    相关资源
    最近更新 更多