无论我对我的 gem 使用 gem install
还是 bundle install
,它们都不起作用。有时 sudo gem install
会让 gems 工作。我运行了 gem list -d
和 which gem
命令,我的系统似乎配置为所有 gem 都安装到“/Library/Ruby/Gems/1.8"但我的环境期望它们在 "/usr/bin/gem"中。我怎样才能正确纠正这个问题?我的印象是“bundle”应该能够安装本地的、特定于应用程序的 gem 副本?
最佳答案
虽然很多 Rubyist 会推荐你 RVM 或 RBENV,但我不使用它们。它非常慢并且会污染您的环境。
如果你使用 Bundler,你根本不需要 RVM - rubygem 本身支持单个 gem 的多个版本。所以你可以开始使用 gems(例如 gem install 等),默认情况下它会安装到你的 $HOME/.gem 目录中。您可以使用以下命令检查安装路径:
$ gem env
RubyGems Environment:
- RUBYGEMS VERSION: 1.8.25
- RUBY VERSION: 1.9.3 (2013-02-06 patchlevel 385) [x86_64-linux]
- INSTALLATION DIRECTORY: /home/lzap/.gem/ruby/1.9.3
- RUBY EXECUTABLE: /usr/bin/ruby
- EXECUTABLE DIRECTORY: /home/lzap/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /home/lzap/.gem/ruby/1.9.3
- /usr/share/gems
- /usr/local/share/gems
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- "install" => "--no-rdoc --no-ri"
- REMOTE SOURCES:
- http://rubygems.org/
您甚至可以使用 GEM_HOME 环境变量更改它。快乐的 gem !
关于ruby-on-rails - 如何更改在 OS 10.6.6 Ruby 1.8 和 Rails 3 上安装 ruby gems 的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4911246/