【问题标题】:Azure artifacts not seeing upstream sourcesAzure 工件没有看到上游源
【发布时间】:2023-03-22 01:18:01
【问题描述】:

所以我有一个 Azure Artifacts 源。这个提要有一些包。如果是 Newtonsoft.Json 则可以说是 10.0.4 版本。 Feed 设置了 Nuget 的上游源。

当我将此提要添加到我的项目时,我的期望是当我想获得最新的 NewtonSoft 时,我能够获得它。但是,在 Visual Studio 或 Nuget Restore 中,它看不到任何其他版本。它可以看到的唯一版本是 10.0.4。我期望由于我指定了上游源,它将从上游获取包。

我尝试取消列出 10.0.4 版本,现在它说甚至找不到牛顿软。

我错过了什么?这里会发生什么?

【问题讨论】:

  • 嗨,您有机会查看以下答案吗?如果它帮助您解决此问题,请告诉我
  • 不,那不是问题。我尝试了所有这些东西。没用

标签: azure-artifacts


【解决方案1】:

对我来说,这是 Azure Artifacts 包存储库的权限问题。 如果您是对 Azure Artifacts 包存储库具有“读者”访问权限的组的一员,您的 nuget restores 或 npm installs(对于 JavaScript 包)将无法将包添加到 Azure Artifacts 包存储库镜像/代理。

将有权访问 Azure Artifacts 包存储库的团队/人员的权限设置为比“读者”高一级 - 将其设置为“协作者”:

这是一个很容易被忽略的错误,因为如果您是 Artifacts 包 repo 创建者,您将不会遇到其他人可能遇到的任何访问错误,因为您是 repo 的所有者(在下图中,我'米阿图尔)

【讨论】:

    【解决方案2】:

    启用上游源后,连接到您的 Feed 的任何用户都可以从远程 Feed 安装软件包,并且您的 Feed 将保存一份副本。

    如果您在 Visual Studio 的包源中添加您的工件源。当您在 Visual Studio 的工件源中搜索包 NewtonSoft 时。这是默认行为,您只能看到软件包 NewtonSoft 的保存副本。

    要安装最新的NewtonSoft,您可以在nuget.org包源中搜索并安装(如果包源列表中没有列出nuget.org,则需要将nuget.org添加到包源中)

    或者您可以使用命令行通过指定版本参数来安装最新的NewtonSoft。见下文:

    Install-Package Newtonsoft.Json -Version 12.0.3

    您也可以通过编辑 .csproj 或 package.config 文件直接将 NewtonSoft 最新版本作为包依赖添加到您的项目中。当你恢复你的包时。如果您的 Artifacts 提要中未找到 NewtonSoft 最新版本,则会从上游源下载。

    【讨论】:

    • 我相信你的最后一段是错误的。 Azure 工件似乎不能作为还原操作的上游源的传递,仅用于安装。至少这就是我们目前使用 NuGet 所遇到的情况
    猜你喜欢
    • 1970-01-01
    • 2012-09-01
    • 2020-07-07
    • 1970-01-01
    • 1970-01-01
    • 2013-04-27
    • 2021-07-17
    • 1970-01-01
    • 2013-09-19
    相关资源
    最近更新 更多