2012-08-04 8 views
5

私は、ノードアプリケーションをHerokuにデプロイしていて、次のエラーが発生します。最近のバージョンのNodeでnpmが動作しない場合は、パッケージマネージャーのために何を使用する予定ですか?私はnode_modulesとpackage.jsonが本当に好きです。それは非常に論理的だったようです。npmはノードv0.8.5では機能しませんか?

-----> Heroku receiving push 
-----> Node.js app detected 
-----> Resolving engine versions 
     Using Node.js version: 0.8.5 
     Using npm version: 1.0.106 
-----> Fetching Node.js binaries 
-----> Vendoring node into slug 
-----> Installing dependencies with npm 
     Error: npm doesn't work with node v0.8.5 
     Required: [email protected] || 0.5 || 0.6 

答えて

11

あなたpackage.json"engines"経由でのNode.js 0.8.xを指定している場合は、"npm"のためのバージョンを設定する必要があります。

{ 
    ... 
    "engines": { 
    "node": "0.8.x", 
    "npm": "1.1.x" 
    } 
} 

Heroku Dev Center for Node.jsから:

そうした場合、バージョンを指定しないと、次のデフォルト値が得られます。

  • のNode.js:0.4.7
  • NPM:1.0.106

このページには、両方のために現れるサポートされているバージョンへのリンクが含まれています。

0

あなたは単純に古いバージョンのnpmを持っています。現在のバージョンは1.1.45で、ノードのバージョンは0.8.xです。

+0

これはHerokuで実行されています...私はHerokuのnpmをアップグレードすることはできませんと思いますか? "heroku run bash"(私にサンドボックス化されたbashコンソールを与えるため)を実行し、 "npm"は何も表示しません。 – Geoff

関連する問題