WSL Ubuntu中npm报ENOENT无法读取package.json的解决求助
解决WSL Ubuntu-22.04中npm报"UNC paths are not supported"的问题
检查npm是否为WSL本地版本
执行which npm查看路径,如果输出是/mnt/c/开头的Windows路径,说明调用的是Windows系统的npm,这是问题根源。
解决方式:- 临时取消Windows npm的关联:
alias npm= - 安装WSL本地的node和npm:
sudo apt update && sudo apt install nodejs npm - 再次执行
which npm,确认路径为/usr/bin/npm
- 临时取消Windows npm的关联:
确保项目在WSL的Linux文件系统中
不要在/mnt/c/等Windows挂载目录下运行npm,切换到WSL的本地目录操作:mkdir -p ~/my-project cd ~/my-project把项目文件复制到这个目录后再执行npm命令。
重置npm配置
若npm配置残留Windows相关路径,执行以下命令重置:npm config delete prefix npm config set prefix ~/.npm-global echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc source ~/.bashrc重新初始化项目
进入WSL本地的项目目录,执行npm init重新生成package.json,再运行npm install安装依赖。
内容的提问来源于stack exchange,提问作者xcalibur
相关产品推荐
相关产品推荐

