我在一個項目文件夾中運行命令您的用戶帳戶不允許安裝到系統中的RubyGems
bundle install
。在某些項目文件夾中,它會產生一個錯誤,在其他項目文件夾中它不會產生錯誤。錯誤是:
您的用戶帳戶不允許安裝到系統中的RubyGems
我知道這可以通過下面的推薦意見是固定的:
bundle install --path vendor/bundle
我的問題是爲什麼行爲不一致?
我在一個項目文件夾中運行命令您的用戶帳戶不允許安裝到系統中的RubyGems
bundle install
。在某些項目文件夾中,它會產生一個錯誤,在其他項目文件夾中它不會產生錯誤。錯誤是:
您的用戶帳戶不允許安裝到系統中的RubyGems
我知道這可以通過下面的推薦意見是固定的:
bundle install --path vendor/bundle
我的問題是爲什麼行爲不一致?
通常,如果你使用RVM,rbenv或chruby安裝Ruby,所有的寶石會如果你使用你的系統,雖然紅寶石(安裝的一個安裝在你的主文件夾下~/.rbenv/ruby-version/...
默認情況下)這些寶石會安裝在一個您無法訪問的位置(沒有sudo
)。
我的猜測是你的版本管理器默認爲系統Ruby,但是你的一些項目中有一個.ruby-version文件,告訴它使用你有權訪問的不同版本的Ruby。
對我來說,我有一個現有的$BUNDLE_PATH
沒有足夠的權限來捆綁用戶在寫。
Your user account isn't allowed to install to the system RubyGems
bundle install --path vendor/bundle
刪除
sudo mv ~/.bundle /tmp
嘗試重新安裝
bundle install
這並沒有提供問題的答案。要批評或要求作者澄清,請在其帖子下方留言。 - [來自評論](/ review/low-quality-posts/19033999) –
此外,我注意到Travis CI完全運行'bundle install --jobs = 3 --retry = 3'命令,但它實際上隱式安裝在'vendor/bundle'按照https://docs.travis-ci.com/user/languages/ruby/#Default-Test-Script –