2013-05-06 50 views
0

我試圖在Windows上設置Ruby開發環境。到目前爲止,它相當「香草」,也就是說,它幾乎只包含Ruby(1.9.1),Bundler(1.3.5)和一些隨機寶石。在Windows上運行Bundler - 在/ dev/null上拒絕權限

現在,每當我試圖運行捆紮機,我得到以下異常:

C:/Ruby19/lib/ruby/1.9.1/rubygems/user_interaction.rb:544:in `initialize': Permission denied - /dev/null (Errno::EACCES) 

檢查源代碼,我發現,捆紮機確定你試圖訪問的/ dev/null的運行Windows然後拯救Errno :: ENOENT(「沒有這樣的文件或目錄」)。我試圖修補它以拯救Errno:EACCES(「Permission denied」),並且瞧 - 它似乎運行得很好。

我嘗試在提升模式下運行shell,但仍然拋出Errno:EACCES。

我的問題是這樣的:我錯過了什麼嗎?或者這是Bundler中的一個錯誤?

(供參考,我在Windows 8運行)

回答

0

/dev/null是一種特殊的文件,並且通常用於一過程的不希望的輸出流的處置,或作爲用於輸入一個方便的空文件在流* nix操作系統。它不在Windows中。

如果bundler沒有檢查它試圖使用/ dev/null的操作系統,那麼肯定這是他們最終的問題。爲了讓事情沒有太大變化,你可以使用Cygwin

+0

是的,我知道/ dev/null :)這聽起來是正確的,這是Bundler結束時的問題。我從其他版本的源文件中看到了代碼片段,並在那裏評估了「is windows」變量。 – 2013-05-06 18:58:50

0

我在Windows上運行7 心中已經觀察到的問題 「errno的:EACCES(拒絕」 權限 「)」 爲C:/開發/空 目錄C:創建的/ dev(沒有 「空」文件)並解決問題。