因此,我使用Express獲得了一個在node.js(我的第一個)中啓動的小型站點。非常滿意,直到我試圖部署到Heroku並發現我已經安裝了0.4.9並且它們只支持0.4.7。Node.js版本和Heroku
是卸載0.4.9和安裝0.4.7我唯一的選擇,還是有辦法做到兩個並排?
因此,我使用Express獲得了一個在node.js(我的第一個)中啓動的小型站點。非常滿意,直到我試圖部署到Heroku並發現我已經安裝了0.4.9並且它們只支持0.4.7。Node.js版本和Heroku
是卸載0.4.9和安裝0.4.7我唯一的選擇,還是有辦法做到兩個並排?
您可以通過自定義的Heroku構建包覆蓋node.js的版本和故宮:
http://blog.superpat.com/2011/11/15/running-your-own-node-js-version-on-heroku/
看來Heroku目前只支持0.4.7,甚至建議嚴格開發該版本。
如果你必須使用heroku,那麼你必須卸載0.4.9,安裝0.4.7。或者您可以嘗試使用nvm - node version manager來管理節點的多個版本。 (免責聲明,我還沒有嘗試過nvm,但我不知道它是否可行,但從命名來看,它應該類似於我每天使用的rvm - Ruby Version Manager。)
如果你不必使用heroku。你總是可以自己設置VPS,並且你可以自由地安裝任何令你滿意的版本。 :D
謝謝,沒有見過nvm。我也認識到,我不必使用heroku,但它是a)我習慣的和b)價格適合我現在正在做的事情。 – Paul
其實......你不必刪除任何東西。
只要確保使用符合節點0.4.7的節點的功能,並且使您的package.json指定了您的依賴關係具有指定的正確版本號或範圍。
我有一個類似的問題,其中我們的開發人員之一是packacge並將依賴關係設置爲節點0.4.8,但它並不需要這是他當時正在使用的版本,我們最終更新了他的package.json列出節點0.4.7,然後我的包依靠他部署到heroku就好了。
我最近發現NVM也(https://github.com/creationix/nvm),這可能是回答這個問題,但我把James Ward的答案標記爲「答案」b/c,我認爲他是我想要做的更好的整體解決方案。 – Paul