2012-03-13 30 views
19

我有一個rails應用程序,我想強制execjs作爲javascript運行時的用戶Node.js。我怎樣才能檢查execj正在使用哪個運行時?如何強制execjs使用Node.js?

謝謝。

回答

23

我想出瞭如何設置javascript運行時。在config/boot.rb中輸入以下行:ENV['EXECJS_RUNTIME'] = 'Node'

+4

更好的選擇是設置shell env變量'EXECJS_RUNTIME'。 – Hauleth 2013-06-03 07:56:03

+0

Hey @ŁukaszNiemier,什麼是必須分配給EXECJS_RUNTIME的價值?我使用**「export EXECJS_RUNTIME =/opt/node-v4.4.5-linux-x64/bin」**。但是現在它顯示錯誤「錯誤的常量名稱/ opt/node-v4.4.5-linux-x64/bin」。 – learner 2016-06-16 06:11:47

+0

@learner使用'export EXECJS_RUNTIME = Node' – Max 2016-06-16 08:21:50

4

如果你還有public/index.html那麼它會告訴你什麼是JS引擎的使用。如果你沒有一個然後在這裏你去https://gist.github.com/2029491

+10

感謝。我不知道你可以這樣做。我也想出瞭如何設置javascript運行時。在config/boot.rb中放入以下行:'ENV ['EXECJS_RUNTIME'] ='節點'。 – Max 2012-03-13 19:14:58

+0

@Max希望你能把它作爲答案! – Crisfole 2013-02-14 21:46:18

11

雖然Max 's answer是完全有效的,如果您想全局設置此選項,那麼值得注意的是有一種更簡單的方法。要打印出當前運行時,通過require 'execjs'進口ExecJS後,只需運行

puts ExecJS.runtime.name 

,並設置當前運行時,只需使用

ExecJS.runtime = ExecJS::Runtimes::Node