如何在pnpm管理的Monorepo中从Deno JSR安装包?
在pnpm Monorepo中安装JSR分发的Deno包
前提条件
确保你的pnpm版本不低于8.10.0,JSR的npm兼容支持需要该版本以上。检查当前版本:
pnpm --version
若版本过低,执行升级命令:
pnpm add -g pnpm
安装方法(两种可选)
方法1:使用jsr:协议直接安装(推荐)
pnpm原生支持jsr:协议,无需额外配置注册表,直接指定JSR包的完整标识符即可安装。
给Monorepo中的指定子包安装(例如目标子包为
packages/web-app):pnpm add jsr:@<作者>/<包名> --filter web-app示例:安装JSR上的
@std/fs到web-app子包:pnpm add jsr:@std/fs --filter web-app在Monorepo根目录安装(作为所有子包可共享的依赖,需确保子包配置了对应共享策略):
pnpm add jsr:@<作者>/<包名> -D # 安装为开发依赖 # 或 pnpm add jsr:@<作者>/<包名> # 安装为生产依赖
方法2:配置JSR注册表后安装
若习惯使用npm风格的包名,可在Monorepo根目录的.npmrc文件中添加JSR注册表配置:
@jsr:registry=https://jsr.io/npm/
配置完成后,需将JSR包的斜杠替换为双下划线,以@jsr/前缀安装:
- 安装
@std/fs的命令示例:pnpm add @jsr/std__fs --filter web-app
验证安装
进入目标子包目录,查看package.json的dependencies或devDependencies字段,确认JSR包已成功添加。之后即可在代码中像普通npm包一样导入使用。
内容的提问来源于stack exchange,提问作者Dmitry Kaigorodov
相关产品推荐
相关产品推荐

