npm install -g less不起作用
我试图设置较less的phpstorm,所以我可以编译.less文件保存.css。 我已经安装了node.js,下一步(根据这个https://www.jetbrains.com/webstorm/help/transpiling-sass-less-and-scss-to-css.html )正在运行这个命令终奌站
npm install -g less
但是,当我这样做,我得到这些错误
☁ ~ npm install -g less npm WARN install Couldn't install optional dependency: EACCES: permission denied, mkdir '/Users/brentscholl/.npm/mkdirp/0.5.1' npm WARN install Couldn't install optional dependency: EACCES: permission denied, mkdir '/Users/brentscholl/.npm/graceful-fs/3.0.8' npm WARN install Couldn't install optional dependency: EACCES: permission denied, mkdir '/Users/brentscholl/.npm/extend/3.0.0' npm WARN install Couldn't install optional dependency: EACCES: permission denied, mkdir '/Users/brentscholl/.npm/readable-stream/2.0.4' npm WARN install Couldn't install optional dependency: EACCES: permission denied, mkdir '/Users/brentscholl/.npm/chalk/1.1.1' npm WARN install Couldn't install optional dependency: EACCES: permission denied, mkdir '/Users/brentscholl/.npm/xtend/4.0.1' npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules /usr/local/lib └─┬ less@2.5.3 ├─┬ errno@0.1.4 │ └── prr@0.0.0 ├── image-size@0.3.5 ├── mime@1.3.4 ├─┬ promise@6.1.0 │ └── asap@1.0.0 └─┬ source-map@0.4.4 └── amdefine@1.0.0 npm ERR! Darwin 15.0.0 npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g" "less" npm ERR! node v5.0.0 npm ERR! npm v3.3.6 npm ERR! path /usr/local/lib/node_modules npm ERR! code EACCES npm ERR! errno -13 npm ERR! syscall access npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules' npm ERR! at Error (native) npm ERR! { [Error: EACCES: permission denied, access '/usr/local/lib/node_modules'] npm ERR! errno: -13, npm ERR! code: 'EACCES', npm ERR! syscall: 'access', npm ERR! path: '/usr/local/lib/node_modules' } npm ERR! npm ERR! Please try running this command again as root/Administrator. npm ERR! Please include the following file with any support request: npm ERR! /Users/brentscholl/npm-debug.log
我是一个完整的noob在这里,不知道下一步该怎么做。 任何帮助将非常感激!
基于我上面的评论,看起来你可能需要使用sudo
以root权限安装模块:
sudo npm install -g less
它需要root权限的原因很可能是因为你以root权限安装了nodejs / npm。 因此,root用户是~/.npm
目录的所有者,这就解释了为什么你遇到了权限错误。
如果你想在安装软件包的时候避免使用sudo
,有几个可选的解决scheme:
- 一个选项是根据此答案中的build议更新
~/.npm
目录的所有者。 - 我个人使用的另一个select是使用NVM ,它是一个节点版本pipe理器,允许您在没有root权限的情况下安装多个版本的节点。 这样做,你可以在不使用
sudo
情况下全局安装npm包,避免许可问题。 - 你也可以查看关于修复权限问题的npm文档。
不build议使用sudo。 它可能会在稍后给你许可问题。 虽然上面的工作,我不是一个更改根文件夹的用户可写,但它可能只是一个问题与多个用户的粉丝。 要解决这个问题,你可以使用'npm用户'组,但这也是更多的pipe理开销。 请参阅此处以了解如何处理文档中的权限: https : //docs.npmjs.com/getting-started/fixing-npm-permissions
我会select2:相反,你可以configurationnpm完全使用不同的目录。 在我们的例子中,这将是我们的主文件夹中的隐藏目录。
为全局安装创build一个目录:
mkdir ~/.npm-global
configurationnpm以使用新的目录path:
npm config set prefix '~/.npm-global'
打开或创build〜/ .profile文件并添加以下行:
export PATH=~/.npm-global/bin:$PATH
回到命令行上,更新你的系统variables:
source ~/.profile
testing:在不使用sudo的情况下全局下载软件包。
npm install -g jshint
这适用于默认的Ubuntu安装:
sudo apt-get install nodejs npm
如果你想更灵活地pipe理版本,我推荐nvm: https : //github.com/creationix/nvm
在MacOS上使用brew,如果你使用的是最新的npm版本,它应该在没有sudo的情况下工作。 请享用 :)
在terminal窗口中运行这些命令(注意:不要replace$ USER部分…这是一个linux命令来让你的用户!):
sudo chown -R $USER ~/.npm sudo chown -R $USER /usr/lib/node_modules sudo chown -R $USER /usr/local/lib/node_modules
- Node.JS中的inheritance
- Grunt – 任务不支持多任务?
- 与本地客户端的Socket.io。 Origin null和Access-Control-Allow-Origin
- NodeJS示例应用程序无法启动,无法find“configuration”?
- Google Page Speed Insights – 基本authentication
- 用户是否可以添加/更改“请求”对象的属性(并导致安全漏洞)?
- parsing服务器Node.js SDK:替代Parse.User.become?
- TypeError:当构造Javascript w / new时,Object不是Object。<anonymous>的函数
- node.js jade模板 – 自定义语法和replace?