在heroku上部署失败,因为npm版本不是最新版本

时间:2011-12-30 10:22:43

标签: node.js heroku express npm

看起来像heroku正在使用npm版本1.0.94

我有一个需要节点0.6.x的依赖项,但是npm 1.0.94是基于节点0.4.7的“基础”

是否有解决此问题的解决方法。

Installing dependencies with npm 1.0.94
       npm ERR! Unsupported
       npm ERR! Not compatible with your version of node/npm: palette@0.0.1
       npm ERR! Required: {"node":"0.6.x"}
       npm ERR! Actual:   {"npm":"1.0.94","node":"0.4.7"}

4 个答案:

答案 0 :(得分:7)

列出的示例@ http://devcenter.heroku.com/articles/node-js

当我将 package.json 修改为以下内容时,

为我工作:

{
  "name": "node-example",
  "version": "0.0.1",
  "dependencies": {
    "express": ">=2.2.0"
  }
}

答案 1 :(得分:5)

您可以使用buildpacks为heroku构建自己的节点版本。

https://github.com/heroku/heroku-buildpack-nodejs

中分叉并修改节点版本

另见http://blog.superpat.com/2011/11/15/running-your-own-node-js-version-on-heroku/

答案 2 :(得分:2)

您可以在package.json文件中指定node和npm的版本。

https://devcenter.heroku.com/articles/nodejs-versions

为我工作。

答案 3 :(得分:0)

我相信Heroku Cedar还没有使用最新版本的node.js!

“先决条件

  • 基本的Node.js知识,包括已安装的Node.js和NPM版本。

  • 您的应用程序必须在Node.js 0.4.7上运行。

  • 您的应用程序必须使用NPM来管理依赖项。“

(见Heroku Dev Center

所以问题不仅是npm版本,还有node.js版本!

您应该验证您是否确实需要最新版本的节点,如果是这样,使用heroku的唯一答案就是等待更新!

祝你好运!