2013-04-06 98 views
2

正如标题所说,我想我的应用程序推送到Heroku的,但我不断收到这些错误:尝试我的Node.js应用程序推送到Heroku的,错误:ENOENT玉NPM

291 error Error: ENOENT, chmod '/tmp/build_htb3av307zzc/node_modules/jade/bin/jade' 
292 error If you need help, you may report this log at: 
292 error  <http://github.com/isaacs/npm/issues> 
292 error or email it to: 
292 error  <[email protected]> 
293 error System Linux 2.6.32-350-ec2 
294 error command "/tmp/node-node-lBSf/bin/node" "/tmp/node-npm-vbZC/cli.js" "rebuild" 
295 error cwd /tmp/build_htb3av307zzc 
296 error node -v v0.10.2 
297 error npm -v 1.2.15 
298 error path /tmp/build_htb3av307zzc/node_modules/jade/bin/jade 
299 error code ENOENT 
300 error errno 34 
301 verbose exit [ 34, true ] 

我的package.json如下:

{ 
    "name": "application-name", 
    "version": "0.0.1", 
    "private": true, 
    "scripts": { 
    "start": "node app.js" 
    }, 
    "dependencies": { 
    "express": "3.1.1", 
    "jade": "*", 
    "mongojs": "*", 
    "less": "*", 
    "crypto": "*" 
    }, 
    "engines": { 
    "node": "0.10.2", 
    "npm": "1.2.15" 
    } 
} 

我一直在谷歌上搜索和阅读的错误:从的.gitignore玉ENOENT和所有的答案似乎只是说,将/ bin/tmp目录,这个可悲的是没有没有为我解决这个问题,我转向你们寻求帮助,任何事情将不胜感激我要扔我的显示器:)谢谢!

+0

'ENOENT'通常是找不到文件时抛出的错误。所以也许某个配置文件丢失了? – Xavi 2013-04-06 09:12:12

回答

1

我不知道你是否像这张海报Error installing jade on heroku一样遭受苦难......如果你已经添加node_modules来git那么这可能是你的问题。删除它并重试。

3

我有同样的问题,它是由您的.gitignore文件中的bin/being引起的。当您推送到heroku是因为它没有被提交时,没有找到文件“/ tmp/build_htb3av307zzc/node_modules/jade/bin/jade”。

从我的.gitignore中删除bin /并确保node_modules中的所有bin目录都已提交,为我修复了错误。

编辑:我发现,正如Gavin所说,另一种方法是从git中删除node_packages,所以Heroku从你的package.json中生成它们。

相关问题