加入收藏 | 设为首页 | 会员中心 | 我要投稿 宁德站长网 (https://www.0593zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

Windows上需要什么权限才能在Vagrant上安装Bower?

发布时间:2021-03-14 22:28:08 所属栏目:Windows 来源:网络整理
导读:通过在Vagrant上运行precision32 Ubuntu Box的 Windows 7机器上安装Bower时,我一直遇到这个错误.我尝试了每个命令的组合,总是得到相同或非常相似的错误 在全球安装sudo,没有sudo等等 ...npm ERR! Error: EPERM,open '/home/vagrant/tmp/npm-1214-AHbOCwuM/

通过在Vagrant上运行precision32 Ubuntu Box的 Windows 7机器上安装Bower时,我一直遇到这个错误.我尝试了每个命令的组合,总是得到相同或非常相似的错误

在全球安装sudo,没有sudo等等

...
npm ERR! Error: EPERM,open '/home/vagrant/tmp/npm-1214-AHbOCwuM/1391873680685-0.36021817452274263/package/build/node_modules/cheerio/node_modules/htmlparser2/node_modules/readable-stream/test/simple/test-stream2-readable-empty-buffer-no-eof.js'
npm ERR!  { [Error: EPERM,open '/home/vagrant/tmp/npm-1214-AHbOCwuM/1391873680685-0.36021817452274263/package/build/node_modules/cheerio/node_modules/htmlparser2/node_modules/readable-stream/test/simple/test-stream2-readable-empty-buffer-no-eof.js']
npm ERR!   errno: 50,npm ERR!   code: 'EPERM',npm ERR!   path: '/home/vagrant/tmp/npm-1214-AHbOCwuM/1391873680685-0.36021817452274263/package/build/node_modules/cheerio/node_modules/htmlparser2/node_modules/readable-stream/test/simple/test-stream2-readable-empty-buffer-no-eof.js' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! System Linux 3.2.0-23-generic-pae
npm ERR! command "/usr/bin/node" "/usr/bin/npm" "install" "-g" "bower" "--no-bin-links"
npm ERR! cwd /home/vagrant
npm ERR! node -v v0.10.25
npm ERR! npm -v 1.3.24
npm ERR! path /home/vagrant/tmp/npm-1214-AHbOCwuM/1391873680685-0.36021817452274263/package/build/node_modules/cheerio/node_modules/htmlparser2/node_modules/readable-stream/test/simple/test-stream2-readable-empty-buffer-no-eof.js
npm ERR! code EPERM
npm ERR! errno 50
npm ERR! stack Error: EPERM,open '/home/vagrant/tmp/npm-1214-AHbOCwuM/1391873680685-0.36021817452274263/package/build/node_modules/cheerio/node_modules/htmlparser2/node_modules/readable-stream/test/simple/test-stream2-readable-empty-buffer-no-eof.js'
...

编辑:以下我的答案请注意使用Windows时的文件目录文件大小限制(260个字符我相信)

我不得不直接在我的c:/驱动器上安装一个文件夹,以获得这个限制,因为某些包最终有嵌套依赖关系导致超出该限制.我的问题是无耻的

自我回答,因为我在StackOverflow上找不到任何其他地方的解决方案

我通过su root更改为root用户,并尝试重新安装在全球范围内,最终得到了工作.显然只是使用sudo是不够的.

所以成了

root @ precision32:npm install -g bower –no-bin-links

编辑:除了这个解决方案,请注意使用Windows时的文件目录文件大小限制(260个字符我相信)

我不得不在一个文件夹中直接在我的c:/驱动器上初始化一个vagrant实例来解决这个限制,因为一些包最终有嵌套依赖关系导致超出该限制.我的问题是无耻的

编辑2:一次又一次遇到这个问题后,我将再次为Windows上的节点模块和流氓人员添加更多信息.

我现在通过放置由于路径长度(通常是EPERM)而失败的任何长的依赖关系链来克服文件路径限制.我将链中的一个包添加到我自己的package.json中.这意味着长的需求链被拆分,因为如果npm已经安装,npm不会在树中更新更深的包.

只需确保您需要一个版本对于该模块的版本字符串是有效的.

package.json中依赖关系的顺序并不重要,依赖关系在安装任何东西之前解决

(编辑:宁德站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!