pnpm依赖安装失败解决|pnpm项目从一个文件夹复制到另一个文件夹运行失败问题解决-以vbenAdmin项目为例

1 前言

最近在使用vben admin项目迁移时,从一个文件夹复制到另一个文件夹运行不起来,排查了一天,终于把问题排查出来了,特地记录一下,便于自己看也便于大家看。

使用项目安装包版本:

v2.11.5 https://github.com/vbenjs/vue-vben-admin/tags

2 解决方案

2.1 软链接问题解决

问题 : pnpm 使用硬链接或符号链接来管理 node_modules 中的依赖项。如果链接路径在新的文件夹或文件系统中失效,可能会导致依赖解析失败。

解决方法: 尝试删除并重新安装所有依赖,确保链接正确创建。

复制代码
rm -rf node_modules pnpm-lock.yaml

node_modules文件夹一定要全部删除,pnpm-lock.yaml文件也要删除,上述是用命令删除的,也可以自己手动删(所有的node_modules都要删)

2.2 文件路径过长问题

问题: 在 Windows 系统上,文件路径过长(超过 260 个字符)可能导致文件系统问题,导致文件无法被正确访问。

解决方法 : 尝试将项目目录移动到一个路径较短的位置,比如 C:\Projects\my-project,然后重新安装依赖。

node_modules文件夹里面的内容路径会很长,所以整个项目文件夹所在路径不宜过长,否则路径可能会超过260个字符。

2.3 pnpm缓存问题

问题 : pnpm 的缓存可能导致一些包没有被正确更新或安装。

解决方法 : 清除 pnpm 的缓存:

依次执行下面命令

  • 清理未使用的缓存包

    pnpm store prune

  • 清空整个 pnpm 的缓存存储库

    pnpm store clear

2.4 pnpm缓存深度清理

执行下面这句话:

复制代码
pnpm store path

然后我们看到这个路径

进入这个目录,将这3个文件夹都手动删除

2.5 pnpm install

删完之后,执行pnpm install

复制代码
pnpm install

2.6 pnpm dev

等待依赖安装完毕后,我们执行pnpm dev

复制代码
pnpm dev

程序运行成功

3 pnpm 安装依然失败解决方案

当我们试了各种方法还是不行,诶?这个时候我们返璞归真,是不是我们的pnpm的源下载不了的原因呢?国内的pnpm下载出现网络相关的问题还是挺多的,那么让我们来替换成国内专属的pnpm源试试

3.1 国内可用源

3.1.1 淘宝pnpm源

复制代码
https://registry.npmmirror.com

3.1.2 腾讯云pnpm源

复制代码
https://mirrors.cloud.tencent.com

3.1.3 cnpm源

复制代码
https://r.cnpmjs.org/

3.2 设置国内可用源命令

复制代码
pnpm config set registry https://registry.npmmirror.com

3.3 查看设置的源

复制代码
pnpm config get registry

返回信息内容是你刚刚设置地址,即设置成功。

3.4 再次pnpm install

ok,pnpm相关依赖在徐徐下载,我的终于又又装成功了~

4 遗留的瑕疵

项目虽然可以成功运行了,也可以正常写代码的了,但是终端还有几个warning ,如果有大佬知道如何解决也可以指点一下,感谢~

相关推荐
前端 贾公子8 分钟前
Monorepo + vite 怎么热更新
前端
coding随想17 分钟前
掌控网页的魔法之书:JavaScript DOM的奇幻之旅
开发语言·javascript·ecmascript
然我1 小时前
不用 Redux 也能全局状态管理?看我用 useReducer+Context 搞个 Todo 应用
前端·javascript·react.js
前端小巷子1 小时前
Web 实时通信:从短轮询到 WebSocket
前端·javascript·面试
神仙别闹1 小时前
基于C#+SQL Server实现(Web)学生选课管理系统
前端·数据库·c#
web前端神器1 小时前
指定阿里镜像原理
前端
枷锁—sha1 小时前
【DVWA系列】——CSRF——Medium详细教程
android·服务器·前端·web安全·网络安全·csrf
枷锁—sha1 小时前
跨站请求伪造漏洞(CSRF)详解
运维·服务器·前端·web安全·网络安全·csrf
群联云防护小杜1 小时前
深度隐匿源IP:高防+群联AI云防护防绕过实战
运维·服务器·前端·网络·人工智能·网络协议·tcp/ip
DanB242 小时前
html复习
javascript·microsoft·html