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

为什么jsDelivr无法获取我发布的最新版npm包?

jsDelivr npm包同步异常解决方案

常见原因及修复方案

  • 检查发布文件完整性
    首先确认你发布到npm的包中包含完整的编译产物:你可以本地执行npm pack命令,解压生成的tgz压缩包,查看是否包含编译后的dist目录。如果缺少产物,说明你可能将dist目录写入了.npmignore,或者没有在package.json中通过files字段声明要发布的文件,调整配置后重新发布版本即可。
  • 显式指定CDN入口
    你可以在package.json中新增jsdelivr字段,直接指定供CDN使用的umd产物路径,示例配置如下:
    "jsdelivr": "./dist/umd/index.js"
    
    显式配置该字段后,jsDelivr会优先读取对应路径的文件,可大幅提升同步成功率。
  • 手动触发缓存刷新
    如果包已经成功发布到npm超过1小时仍未同步,你可以在jsDelivr的包详情页找到缓存刷新按钮,手动触发同步,通常触发后10分钟内即可完成版本更新。
  • 调整发布钩子配置(可选优化)
    你当前使用的prepublish钩子在npm 4及以上版本中,会在执行npm install时也触发,建议替换为prepublishOnly钩子,该钩子仅会在npm publish执行前触发,避免不必要的编译操作,调整后的scripts配置如下:
    "scripts": {
      "format": "prettier --write \"src/**/*.ts\" \"src/**/*.js\"",
      "lint": "tslint -p tsconfig.json",
      "test": "jest --config jestconfig.json",
      "compile": "tsc -p tsconfig.json && tsc -p tsconfig-cjs.json && tsc -p tsconfig-umd.json",
      "prepublishOnly": "npm run compile"
    }
    

如果以上操作都完成后仍无法同步,你可以检查npm对应版本的元信息是否正常,确认没有设置访问权限限制。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 02:36:04