如果这个问题已经回答了,我很抱歉,但我看不到任何人确切地理解这个错误。
使用foreman,我可以看到我的应用程序成功运行,但在部署到Heroku时,我收到以下错误:
Counting objects: 717, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (617/617), done.
Writing objects: 100% (717/717), 3.22 MiB | 305 KiB/s, done.
Total 717 (delta 61), reused 0 (delta 0)
-----> Node.js app detected
-----> Resolving engine versions
Using Node.js version: 0.6.20
Using npm version: 1.0.106
-----> Fetching Node.js binaries
-----> Vendoring node into slug
-----> Installing dependencies with npm
express@3.0.6 ./node_modules/express
â"oâ"?â"? range-parser@0.0.4
â"oâ"?â"? cookie-signature@0.0.1
â"oâ"?â"? fresh@0.1.0
â"oâ"?â"? methods@0.0.1
â"oâ"?â"? mkdirp@0.3.3
â"oâ"?â"? cookie@0.0.5
â"oâ"?â"? debug@0.7.0
â"oâ"?â"? buffer-crc32@0.1.1
â"oâ"?â"? commander@0.6.1
â"oâ"?â"? send@0.1.0 (mime@1.2.6)
â""â"?â"? connect@2.7.2
npm ERR! Error: ENOENT, chmod '/tmp/build_2phd1ent7ca7q/node_modules/socket.io/node_modules/socket.io-client/node_modules/uglify-js/bin/uglifyjs'
npm ERR! Report this *entire* log at:
npm ERR! <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR! <npm-@googlegroups.com>
npm ERR!
npm ERR! System Linux 2.6.32-348-ec2
npm ERR! command "/tmp/node-node-UFfk/bin/node" "/tmp/node-npm-Mvon/cli.js" "rebuild"
npm ERR! cwd /tmp/build_2phd1ent7ca7q
npm ERR! node -v v0.6.20
npm ERR! npm -v 1.0.106
npm ERR! path /tmp/build_2phd1ent7ca7q/node_modules/socket.io/node_modules/socket.io-client/node_modules/uglify-js/bin/uglifyjs
npm ERR! code ENOENT
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /tmp/build_2phd1ent7ca7q/npm-debug.log
npm not ok
! Failed to rebuild dependencies with npm
! Heroku push rejected, failed to compile Node.js app我猜这与socket.io依赖有关,但我没有足够的知识来确切地知道是什么。我创建了一个新的git存储库,并将其从另一个存储库复制过来,因为该项目不在该存储库的根目录中,因此无法推送到heroku,所以这可能与它有关。
任何帮助都将不胜感激。
发布于 2013-01-22 06:42:59
之所以会出现这个错误,是因为socketio使用的uglifyjs (准确地说是source-map)的一个依赖项要求节点至少为>= 0.8,而您使用的是0.6.20。
npm info source-map@0.1.7显示如下(删除了一些键):
{ name: 'source-map',
description: 'Generates and consumes source maps',
'dist-tags': { latest: '0.1.8' },
versions:
[ '0.0.0',
...
'0.1.8' ],
time:
{ '0.0.0': '2011-08-30T19:45:40.104Z',
...
'0.1.7': '2012-11-02T19:09:11.172Z',
'0.1.8': '2012-11-19T22:48:36.067Z' },
author: 'Nick Fitzgerald <nfitzgerald@mozilla.com>',
version: '0.1.7',
homepage: 'https://github.com/mozilla/source-map',
engines: { node: '>=0.8.0' },
dist:
{ shasum: '92da34014a5576d60676150bcf0f55cbd1f395c0',
tarball: 'http://registry.npmjs.org/source-map/-/source-map-0.1.7.tgz' } }正如您从node密钥中看到的,它至少需要engines的0.8.0版本。
https://stackoverflow.com/questions/14448470
复制相似问题