0

我遇到了ExecJS的問題,因爲它無法找到所需的運行系統。我正在使用Windows,並且我的電腦上安裝了Windows CScript和Node.js,但這兩個人都沒有被調用。Ruby - ExecJS不加載(我有適當的材料和路徑位置。)[Windows]

結果,我無法運行任何軌任務,涉及到這個(我甚至無法加載RubyMine的調用,如DB行動我耙名單:創建從一個全新的項目創建我的數據庫)

我能夠從命令行訪問csript和節點,並且我已經檢查了我的環境變量,並且它們正確的文件位置在PATH中。還有一些破壞我使用ExecJS的能力。有沒有其他人有類似的經歷,你有所有正確的東西,但仍有問題?

回答

1

當Ruby產生子進程來調用CScript或Node時,它將使用相同的規則,允許cmd.exe從命令行執行它們。

但是,有時,註冊表或環境變量中的內容可能會影響此過程。

在RubyInstaller項目中,我們收集了一系列可能是罪魁禍首的troubleshooting items

請檢查COMSPEC環境變量設置爲使用cmd.exe而不是TCC/LE或其他東西。

C:\>SET COMSPEC 

此外,檢查您的註冊表不包含AutoRun關鍵,這也將影響紅寶石。

C:\>REG QUERY "HKCU\Software\Microsoft\Command Processor" 
C:\>REG QUERY "HKLM\Software\Microsoft\Command Processor" 

如果您看到上述命令的一個關鍵AutoRun,這意味着什麼是設置於自動執行每次新cmd.exe啓動,這是不好的一些情況。

請按照故障排除頁面中的說明進行操作。

這也會影響需要編譯的gem安裝,但是如果沒有失敗,那麼問題可能就是別的。

希望有所幫助。

1

我有類似的問題,儘管安裝了Node.js,但我的基本骨架應用程序不能運行,然後嘗試therubyracer gem。最後,我決定使用我的故障排除口頭禪,「如有疑問,以管理員身份運行」。所以我以管理員身份運行我的rails cmd,並在此後正常工作。