使用 pnpm 安装依赖包后,如果将依赖包直接复制内网环境中,可能会出现无法使用的情况,且不能联网下载,如何解决?

pnpm 默认使用硬链接(hard link)来共享依赖包,以减少磁盘空间占用。硬链接的特性是:

  • 硬链接指向磁盘上的同一文件,而不是复制文件内容。

  • 如果直接复制硬链接文件,目标文件可能无法正确引用原始文件,导致依赖包失效。

  • 在内网环境中既没有pnpm 又没有安装包 怎么让copy的项目正常运行呢?

第一步:在有网环境中将 pnpm下载打包

执行 npm pack pnpm@8.2.0 得到 pnpm-8.2.0.tgz 文件

第二步:离线环境中

复制 pnpm-8.2.0.tgz 到离线环境

npm install -g ./pnpm-8.2.0.tgz

执行完此命令后 离线环境中的pnpm 已经装好 可以通过pnpm -v检查

第三步:复制有网环境中的pnpm_store至离线环境中

第四步:pnpm install --offline 至此离线环境中依赖包安装成功

相关推荐
+VX:Fegn0895几秒前
计算机毕业设计|基于springboot + vue蛋糕店管理系统(源码+数据库+文档)
前端·数据库·vue.js·spring boot·课程设计
Nicander1 小时前
我给 Excalidraw 做了一个本地工作区:DrawSpace
前端·开源
linux_cfan3 小时前
17 · 引擎适配器全景:HLS/DASH/Vimeo/Mux/Cast
前端·javascript·音视频
计算机魔术师4 小时前
烧掉2780亿美元还不够?OpenAI的资本豪赌让人头皮发麻
前端
IT_陈寒4 小时前
Java线程池用错参数,我的服务居然悄悄崩溃了
前端·人工智能·后端
卡布鲁5 小时前
React useMemo 与 useCallback 完全指南:原理、场景与避坑
前端·react.js
碳基修炼5 小时前
排查记:本地 devServer 是 http,浏览器却把 302 重定向升级成了 https
前端·http
步行cgn5 小时前
Spring p 命名空间注入详解
java·前端·spring
何何____5 小时前
Vue 生命周期详解
前端·javascript
江米小枣tonylua5 小时前
TypeScript 全面の拥抱 !Prisma 8 + Electron 升级实战
前端