强制heroku使用特定版本的Node.js

我已经写了一个node.js应用程序,在本地运行良好,但是当我推送到heroku时,出现以下错误:

2012-04-11T00:42:55+00:00 app[web.1]: throw e; // process.nextTick error, or 'error' event on first tick 2012-04-11T00:42:55+00:00 app[web.1]: ^ 2012-04-11T00:42:55+00:00 app[web.1]: TypeError: Object #<Object> has no method 'isArray' 

我发现heroku的Node是v0.4.7,但是我的本地版本是v0.6.3。 我指定在我的package.json文件中使用v0.6.3:

 "engine": { "node": "0.6.3" , "npm": "1.1.9" } 

但是这显然没有做任何事情,即使我推了。

这一直困扰着我整天,我需要做的是弄清楚如何让util.isArray() 方法再次工作(希望)。 这是我得到的错误,这是因为它在节点的v0.4.7不支持。

请注意,您正在使用engine而不是每个文档的engines ,这会导致默认的0.4.7版本被应用。