簡體   English   中英

Rails服務器命令不起作用,並且在另一個版本的Ruby上也沒有寶石

[英]rails server command not working and no gems on another version of ruby

我在Windows 7機器上運行滑軌,並且正在使用pik作為我的RVM。

我當前安裝了ruby 1.9.3,但是我有一個需要ruby 1.9.2的項目。

因此,使用pik時,我從gitbash運行以下命令:

  1. pik 192
  2. ruby -v

紅寶石1.9.2p180(2011-02-18)[i386-mingw32]

  1. rails server

sh.exe“:rails:找不到命令

但是,當我使用pik 193時,我肯定可以看到服務器正在運行。 在pik 192下運行寶石列表也不會顯示任何本地寶石,而pik 193會顯示很多本地寶石。

我如何在這兩個版本之間“共享”寶石,還是有更好的選擇來降低風險?

要在多個安裝之間共享gem,您需要在兩個安裝的公共位置安裝gem。

默認情況下,Windows上的Ruby會將gem安裝在Ruby目錄中。

您可以這樣做:

gem env gemdir

要在兩個解釋器的通用位置安裝,您需要將GEM_HOME環境變量設置為特定目錄,例如C:\\gems

SET GEM_HOME=C:\gems
gem env gemdir

您還需要將bin目錄添加到PATH

SET PATH=C:\gems\bin;%PATH%

這將使gem可執行文件可用。

但是,請注意,盡管Ruby 1.9.2和1.9.3聲明它們是兼容的,但對於某些gem的已編譯C擴展來說可能並非如此。

Ruby 1.9.3引入了1.9.2中不可用的某些API級功能,當在Ruby 1.9.2中加載1.9.3編譯的gem時,可能會導致問題。

這些差異可能導致分段錯誤,並且在某些情況下會導致奇怪的應用程序崩潰。

不建議使用,使用時需您自擔風險。

希望能有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM