所以,我使用Express在node.js(我的第一个)中启动了一个小站点。非常满意,直到我尝试部署到Heroku并发现我安装了0.4.9并且它们仅支持0.4.7。
卸载0.4.9并安装0.4.7我唯一的选择,还是有办法在两者上并排?
答案 0 :(得分:3)
您可以通过自定义Heroku构建包来覆盖node.js和npm的版本:
http://blog.superpat.com/2011/11/15/running-your-own-node-js-version-on-heroku/
答案 1 :(得分:2)
实际上......你不必删除任何东西。
确保您使用符合节点0.4.7的节点功能,并且当您创建指定依赖项的package.json时,指定了正确的版本号或范围。
我有一个类似的问题,我们的开发人员之一是packacge并将依赖关系设置为节点0.4.8但是它并不要求它只是他当时正在使用的版本,我们最终更新了他的包.json列出节点0.4.7然后我的包依赖于他部署到heroku就好了。
答案 2 :(得分:1)
Heroku目前只支持0.4.7,甚至建议严格按照该版本进行开发。
如果你必须使用heroku,那么你必须卸载0.4.9,安装0.4.7。或者您可以尝试nvm - node version manager来管理多个版本的节点。 (免责声明,我还没有尝试过nvm,我不知道它是否有效。但是,从命名来看,它应该类似于rvm - Ruby Version Manager,我每天使用它。)
如果您不必使用heroku。您可以随时自行设置VPS,您可以自由安装任何令您满意的版本。 :d