【问题标题】:Error installing package node-sass安装包 node-sass 时出错
【发布时间】:2018-08-25 23:04:18
【问题描述】:

我在安装 node-sass 时总是遇到同样的问题

sudo npm install -g node-sass

gyp 错误!堆栈错误:EACCES:权限被拒绝,mkdir '/Users/max/Sites/xxxxxxx/node_modules/node-sass/build'

我已经更新了我的 node 和 npm 版本,但同样无事可做,似乎有权限....有什么想法吗?

【问题讨论】:

    标签: npm


    【解决方案1】:

    这似乎是由于安装 node-sass 时出现问题,这是依赖项之一。

    这是由于在尝试安装软件包时使用了 sudo

    阅读此https://docs.npmjs.com/getting-started/fixing-npm-permissions 以了解如何修复您的权限。

    【讨论】:

      【解决方案2】:

      您似乎遇到了权限问题。如果您正在安装npm-packages,那么您在尝试全局安装软件包时可能会收到EACCES 错误。这意味着您无权写入npm 用于存储全局包和命令的目录。

      您可以通过运行命令来更改目录权限:sudo chmod u+x -R 775 ~/.npmsudo chown $USER -R ~/.npm,或者您可以使用 sudo 运行任何 npm 命令,这应该可以解决您的问题。

      如果您在本地安装npm-package,那么您应该在本地项目目录中,并可以尝试运行sudo npm install <pkg-name> 命令来安装所需的包。使用sudo 的目的是它会更改您的所有者权限,以便您可以使当前用户授权运行npm 命令。

      我建议你看看https://docs.npmjs.com/getting-started/fixing-npm-permissions

      【讨论】:

        【解决方案3】:

        如果您运行 sudo npm install -g node-sass --unsafe-perm 应该可以解决您的问题。

        【讨论】: