2013-04-06 46 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中生成它們。

相關問題