You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GCP Artifacts NPM仓库无法搜索可用包,求解决方案

解决GCP Artifact Registry NPM仓库无法搜索包的问题

核心原因

GCP Artifact Registry的NPM仓库并未实现标准NPM Registry的/v1/search和/v1/all接口,这是平台本身的功能限制,所以直接调用这些接口会返回"Requested entity was not found"错误。

可行解决方案

1. 使用gcloud CLI直接列出包

这是最直接的方式,无需额外开发:

  • 列出指定仓库下所有包:
    gcloud artifacts packages list --repository=REPOSITORY_NAME --location=europe-west1 --project=PROJECT_NAME
    
  • 过滤指定范围的包(比如你的BASE_SCOPE):
    gcloud artifacts packages list --repository=REPOSITORY_NAME --location=europe-west1 --project=PROJECT_NAME --filter="name:BASE_SCOPE/*"
    
  • 查看某个包的所有版本:
    gcloud artifacts versions list --package=PACKAGE_NAME --repository=REPOSITORY_NAME --location=europe-west1 --project=PROJECT_NAME
    

2. 搭建中间适配服务

如果需要让Unity Package Manager直接支持浏览,可以自己写一个简单的Node.js服务,适配NPM搜索接口格式:

  • 利用gcloud SDK的客户端库(或直接调用gcloud CLI命令)获取仓库内的包列表
  • 将获取到的包信息转换成符合NPM /v1/search接口的响应格式(比如包含objects数组,每个元素包含package.name等字段)
  • 把这个服务部署在GCP或其他服务器上,将Unity的自定义注册表地址指向这个中间服务,而非直接指向Artifact Registry

3. 维护手动包清单

如果团队规模小、包更新不频繁,可以在仓库根目录维护一个packages.json或README文件,手动记录所有可用包的名称、版本和描述,每次新增或更新包时同步更新这个文件,Unity开发者可以直接查看这个文件了解可用包。


内容的提问来源于stack exchange,提问作者MegaMiley

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 22:48:08