错误“您的缓存文件夹包含根拥有的文件,由于之前版本的 npm 中的错误”而“npx create-react-app example_app”

23 javascript node.js npm reactjs create-react-app

当我尝试使用 创建新的 React 应用程序时npx create-react-app example_app,出现此错误

[您的缓存文件夹包含根拥有的文件,这是由于以前版本的 npm 中的一个错误,该错误已被解决 sudo chown -R 0:0 "/root/.npm"]

我甚至尝试重新安装create-react-app再次使用npm i create-react-app,这是给同类的 错误

我在搜索之后假设这是由于某些权限问题。我当前的用户无权访问我的用户名/home/shubham/.npm在哪里shubham,但我对此不太确定。

我试图使用chown命令来解决这个错误

sudo chown -R <username>:<groupname> /home/shubham/.npm" 
Run Code Online (Sandbox Code Playgroud)

where <username>isShubham<groupame>is 1000,但它仍然无法正常工作。

请求人们帮助我。如果您需要更多信息,请告诉我。

小智 29

这对我有用:

sudo npm cache clean --force 
Run Code Online (Sandbox Code Playgroud)

  • 感谢您的评论。我尝试使用给定的命令,仍然收到相同的错误 (3认同)

小智 14

如果您遇到此问题并且没有 root 访问权限来修复当前 NPM 缓存文件夹的权限,解决该错误的一种方法是定义不同的缓存目录。

首先,为缓存创建一个新目录。然后,设置npm_config_cache环境变量:

在Linux中

export npm_config_cache=/path/to/cache
Run Code Online (Sandbox Code Playgroud)

在 Windows 中

set npm_config_cache=/path/to/cache
Run Code Online (Sandbox Code Playgroud)


小智 10

经过上述答案后,这对我有帮助。我希望它也对其他人有帮助。重新阅读 npm 错误提示后,我调整了提供的命令以包含错误消息中给出的 .npm 路径。以下是我原来的错误消息的副本。

npm 错误!代码 EACCES

npm 错误!系统调用访问

npm 错误!路径 /home/vagrant/ .npm-global /lib/node_modules

npm 错误!错误号-13

npm 错误!

npm 错误!由于以下错误,您的缓存文件夹包含 root 拥有的文件

npm 错误!npm 的早期版本已得到解决。

npm 错误!

npm 错误!要永久解决此问题,请运行:

npm 错误!sudo chown -R 900:900 “/home/vagrant/.npm”

npm 错误!此运行的完整日志可以在以下位置找到:

npm 错误!/home/vagrant/.npm/_logs/2020-07-09T16_43_35_046Z-debug.log

[ExecStack] 退出代码 243 时间 01:03

[错误] 执行目标钩子前端请求失败。

[错误] 命令source:build:frontend-reqs 退出,代码为 1。

我没有使用sudo chown -R 900:900 "/home/vagrant/.npm",而是使用sudo chown -R 900:900 "/home/vagrant/.npm-global"。之后,我可以使用之前导致错误的命令,没有任何问题。


Anu*_*ava 5

尝试 sudo chown -R 1000:1000 "/home/shubham/.npm"