我在这个问题中遇到了类似的问题:Win 8.1, Vagrant, Chef, Ubuntu, Ember-cli, ember new "npm ERR! tar.unpack untar error /home/vagrant/.npm/"
我正在尝试使用新的ember-cli将旧的ember项目更新为2.1。 我在流浪服务器上运行我的项目。
我有节点(v.0.12.7),npm(3.3.10),凉亭(1.6.5) 安装了ember-cli -g(版本:1.13.8,节点:0.12.7,npm:2.13.4,os:linux x64)。
然而,每当我在ember init生成的项目上运行“npm install --no-bin-links”时,我都会收到以下错误:
51716 error tar.unpack untar error /home/vagrant/.npm/ember-cli/1.13.8/package.tgz
51717 verbose stack RangeError: Maximum call stack size exceeded
51717 verbose stack at Array.filter (native)
51717 verbose stack at /usr/lib/node_modules/npm/lib/install/actions.js:55:37
51717 verbose stack at Array.forEach (native)
51717 verbose stack at markAsFailed (/usr/lib/node_modules/npm/lib/install/actions.js:54:16)
51717 verbose stack at /usr/lib/node_modules/npm/lib/install/actions.js:57:7
51717 verbose stack at Array.forEach (native)
51717 verbose stack at markAsFailed (/usr/lib/node_modules/npm/lib/install/actions.js:54:16)
51717 verbose stack at /usr/lib/node_modules/npm/lib/install/actions.js:57:7
51717 verbose stack at Array.forEach (native)
51717 verbose stack at markAsFailed (/usr/lib/node_modules/npm/lib/install/actions.js:54:16)
51718 verbose cwd /at/Site/public/preview/EP
51719 error Linux 3.2.0-4-amd64
51720 error argv "node" "/usr/bin/npm" "i"
51721 error node v0.12.7
51722 error npm v3.3.10
51723 error Maximum call stack size exceeded
51724 error If you need help, you may report this error at:
51724 error <https://github.com/npm/npm/issues>
51725 verbose exit [ 1, true ]
这与npm的不同版本号(全局和ember-cli)有关,还是在我的流浪汉设置中?这个问题不是由Windows最大路径长度造成的,我已经检查过了。
修改
我尝试单独安装npm软件包而不是“npm install --no-bin-links”。唯一失败的是“npm install --no-bin-links ember-cli@1.13.8”。这些是我的package.json中的依赖项:
"broccoli-asset-rev": "^2.1.2",
"ember-cli": "1.13.8",
"ember-cli-app-version": "0.5.0",
"ember-cli-babel": "^5.1.3",
"ember-cli-content-security-policy": "0.4.0",
"ember-cli-dependency-checker": "^1.0.1",
"ember-cli-htmlbars": "0.7.9",
"ember-cli-htmlbars-inline-precompile": "^0.2.0",
"ember-cli-ic-ajax": "0.2.1",
"ember-cli-inject-live-reload": "^1.3.1",
"ember-cli-qunit": "^1.0.0",
"ember-cli-release": "0.2.3",
"ember-cli-sri": "^1.0.3",
"ember-cli-uglify": "^1.2.0",
"ember-data": "1.13.8",
"ember-disable-proxy-controllers": "^1.0.0",
"ember-export-application-global": "^1.0.3"
感谢您的时间
答案 0 :(得分:1)
我已经解决了我的问题。
事实证明,我的文件夹安装在我的流浪汉的方式是如此之慢,它干扰了我的npm安装。 在我的vagrant文件中,文件夹的安装方式如下:
config.vm.synced_folder "../", "/at"
我已将其替换为:
config.vm.provision "shell", run: "always" do |s|
s.inline = "sudo apt-get update
sudo bash /vagrant/mountfolder.sh"
end
在我的流浪文件旁边,我放置了一个文件“mountfolder.sh”
# replace your username and password with for example: user, ****. Replace YOURSHARENAME with the name of your windows share
# mountpoint checks if share is already mounted, prevents warning when provisioning
mountpoint -q /projects|| (mkdir /projects -p && apt-get -y install cifs-utils && mount -t cifs //192.168.255.1/YOURSHARENAME /projects --verbose -o 'user=dkdomain.intra\YOURUSERNAME,password=YOURPASSWORD,rw,uid=vagrant,gid=vagrant,file_mode=0777,dir_mode=0777')
用必要信息替换大写字母。