2012-08-04 3 views
5

Ich stelle eine Knoten-App für Heroku bereit und erhalte den folgenden Fehler. Wenn npm nicht mit den neuesten Versionen von Node funktioniert, was sollen wir dann für einen Paketmanager verwenden? Ich mochte wirklich node_modules und package.json. Es schien sehr logisch.npm funktioniert nicht mit Knoten 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 

Antwort

11

Wenn Sie Node.js 0.8.x über "engines" in Ihrem package.json spezifizieren, können Sie auch eine Version für "npm" festlegen müssen:

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

Vom Heroku Dev Center for Node.js:

Wenn Sie das tun Wenn Sie keine Version angeben, erhalten Sie die folgenden Standardwerte:

  • Node.js: 0.4.7
  • npm: 1.0.106

Diese Seite gibt es auch Links zu unterstützten Version enthält manifestiert für beide.

0

Sie haben einfach eine veraltete Version von npm: Die aktuelle Version ist 1.1.45 und funktioniert gut mit 0.8.x Versionen von Knoten.

+0

Dies läuft auf Heroku ... Ich glaube nicht, dass ich Herokus NPM upgraden kann, kann ich? Mit "heroku run bash" (um mir eine Sandbox Bash Konsole zu geben) und dann "npm" wird mir nichts angezeigt. – Geoff