当前位置: 首页 > news >正文

pnpm 升级

pnpm 的安装源太多了,感觉系统变量都有引入顺序。

今天踩坑记录:
pnpm ,如果最初用npm 装的,可以用npm 升级;
如果最初用brew 装的,得用brew 升级;
如果最初是用corepack 装的得用corepack 升级;

由于项目需要,我今天直接:npm install -g pnpm@10.12.4

然后,就 Error: EACCES: permission denied, access ‘/usr/local/lib/node_modules’

在这里插入图片描述

npm install -g pnpm@10.12.4
npm error code EACCES
npm error syscall mkdir
npm error path /usr/local/lib/node_modules/lib/node_modules/pnpm
npm error errno -13
npm error Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/lib/node_modules/pnpm'
npm error     at async mkdir (node:internal/fs/promises:859:10)
npm error     at async /usr/local/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js:638:20
npm error     at async Promise.allSettled (index 0)
npm error     at async [reifyPackages] (/usr/local/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js:336:11)
npm error     at async Arborist.reify (/usr/local/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js:141:5)
npm error     at async Install.exec (/usr/local/lib/node_modules/npm/lib/commands/install.js:149:5)
npm error     at async Npm.exec (/usr/local/lib/node_modules/npm/lib/npm.js:208:9)
npm error     at async module.exports (/usr/local/lib/node_modules/npm/lib/cli/entry.js:67:5) {
npm error   errno: -13,
npm error   code: 'EACCES',
npm error   syscall: 'mkdir',
npm error   path: '/usr/local/lib/node_modules/lib/node_modules/pnpm'
npm error }
npm error
npm error The operation was rejected by your operating system.
npm error It is likely you do not have the permissions to access this file as the current user
npm error
npm error If you believe this might be a permissions issue, please double-check the
npm error permissions of the file and its containing directories, or try running
npm error the command again as root/Administrator.

改变文件的权限:

  1. First check who owns the directory
ls -la /usr/local/lib/node_modules

请添加图片描述

它拒绝访问,因为节点模块文件夹归root所有。
因此,需要将root更改为您的用户,但首先运行下面的命令来检查当前用户

在控制台输入:id -un OR whoami
然后去改变owner

sudo chown -R $USER /usr/local/lib/
sudo chown -R $USER /usr/local/bin/
sudo chown -R $USER /usr/local/share/

再检查文件所属权:
请添加图片描述

然后我再执行 sudo npm install -global pnpm

在这里插入图片描述
呃,这。
脑子里忽然闪过一丢灵光,感觉是系统变量引入顺序的问题。我看公司的这台电脑里是装了brewcorepack
我就试了试:brew 结果和 npm 升级 pnpm 一样。

最后我试了试corepack

corepack enable pnpm
corepack use pnpm@latest-10

然后就好了

pnpm -v
10.12.4

然后我开始装包:pnpm install
pnpm install gives no such file or directory, mkdir '/home/vsts error.

ENOENTENOENT: no such file or directory, mkdir '/home/vsts'pnpm: ENOENT: no such file or directory, mkdir '/home/vsts'at async Object.mkdir (node:internal/fs/promises:859:10)at async createNewStoreController (/Users/edy/.cache/node/corepack/v1/pnpm/10.12.4/dist/pnpm.cjs:101790:7)

通过搜索找到答案:手动设置路径:pnpm config set store-dir /path/to/pnpm/store/v3.
Make sure that the path actually exists.

参考资料:https://github.com/pnpm/pnpm/issues/4936

设置路径后,再次装包

pnpm no such file or directory, mkdir ‘/path’

ENOENTENOENT: no such file or directory, mkdir '/path'pnpm: ENOENT: no such file or directory, mkdir '/path'at async Object.mkdir (node:internal/fs/promises:859:10)at async createNewStoreController (/Users/edy/.cache/node/corepack/v1/pnpm/10.12.4/dist/pnpm.cjs:101790:7)at async installDeps (/Users/edy/.cache/node/corepack/v1/pnpm/10.12.4/dist/pnpm.cjs:159048:21)

找到答案:pnpm config set store-dir ~/pnpm

参考资料:https://blog.csdn.net/qq_37655530/article/details/129228561

哎,终于搞好了。

参考资料:
https://stackoverflow.com/questions/48910876/error-eacces-permission-denied-access-usr-local-lib-node-modules

https://github.com/pnpm/pnpm/issues/4936

https://blog.csdn.net/qq_37655530/article/details/129228561

http://www.lqws.cn/news/606169.html

相关文章:

  • 解决在Pom文件中写入依赖坐标后, 刷新Maven但是多次尝试都下载不下来
  • 使用开源项目youlai_boot 导入到ecplise 中出现很多错误
  • 【飞算JavaAI】智能开发助手赋能Java领域,飞算JavaAI全方位解析
  • Kuikly 与 Flutter 的全面对比分析,结合技术架构、性能、开发体验等核心维度
  • Flutter
  • Oracle 证书等级介绍
  • Rust 安装使用教程
  • 去中心化身份:2025年Web3身份验证系统开发实践
  • 【数据结构】排序算法:冒泡与快速
  • MacOS 安装brew 国内源【超简洁步骤】
  • transformers==4.42.0会有一个BUG
  • 从SEO到GEO:AI时代的品牌大模型种草与数字营销重构
  • Ubuntu-18.04-bionic 的apt的/etc/apt/sources.list 更换国内镜像软件源 笔记250702
  • WPF学习笔记(20)Button与控件模板
  • 从模型部署到AI平台:云原生环境下的大模型平台化演进路径
  • 如快 Sofast:自定义快捷键 剪贴板智能管家快速查找搜索提升办公效率
  • 全面的 Spring Boot 整合 RabbitMQ 的 `application.yml` 配置示例
  • HarmonyOS学习记录2
  • Linux平台MinGW32/MinGW64交叉编译完全指南:原理、部署与组件详解
  • 计算机网络(五)数据链路层 MAC和ARP协议
  • RuoYi框架低代码特性
  • 医学+AI教育实践!南医大探索数据挖掘人才培养,清华指导发布AI教育白皮书
  • Java项目:基于SSM框架实现的软件工程项目管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告】
  • python: 字符串编码和解码
  • CAN转Modbus TCP网关赋能食品搅拌机智能协同控制
  • 支持向量机(SVM)在脑部MRI分类中的深入应用与实现
  • Django全栈开发:架构解析与性能优化实战
  • 基于开源链动2+1模式AI智能名片S2B2C商城小程序的场景零售创新研究
  • 【算法】动态规划 矩阵:120. 三角形最小路径和
  • 达梦数据库linux安装