npm不适用于节点v0.8.5?

时间:2012-08-04 03:51:36

标签: node.js heroku npm

我正在向Heroku部署Node应用程序并收到以下错误。如果npm不能与最新版本的Node一起使用,我们应该将什么用于包管理器?我真的很喜欢node_modules和package.json。这似乎很合乎逻辑。

-----> 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: node@0.4 || 0.5 || 0.6

2 个答案:

答案 0 :(得分:11)

如果您在0.8.x中通过"engines"指定Node.js package.json,则可能还需要为"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
  •   

该页面还包含指向两者的受支持版本清单的链接。

答案 1 :(得分:0)

你只是得到了一个过时版本的npm:当前版本是1.1.45,并且在0.8.x版本的节点上工作得很好。