【发布时间】:2011-05-23 19:56:21
【问题描述】:
我在使用 rvm、bundler 和 gemsets 时遇到问题。我在 rvm 中安装了 3 个红宝石:
rvm rubies
macruby-0.7.1 [ x86_64 ]
ree-1.8.7-2010.02 [ x86_64 ]
=> ruby-1.9.2-p0 [ x86_64 ]
还有这样的宝石:
rvm gemsets
macruby-0.7.1 [ x86_64 ]
ree-1.8.7-2010.02 [ x86_64 ]
ree-1.8.7-2010.02@chef [ x86_64 ]
ree-1.8.7-2010.02@global [ x86_64 ]
ree-1.8.7-2010.02@mobi [ x86_64 ]
ree-1.8.7-2010.02@temple_rails [ x86_64 ]
ruby-1.9.2-p0 [ x86_64 ]
=> ruby-1.9.2-p0@instapaper [ x86_64 ]
ruby-1.9.2-p0@mobi [ x86_64 ]
我有一个 .rvmrc 可以切换到 ruby 1.9.2 和“instapaper” gemset:
rvm use ruby-1.9.2-p0@instapaper
我想使用 bundler,所以我在这个 gemset 中手动安装了 bundler,效果很好。
我构建了我的 Gemfile:
source "http://rubygems.org"
gem "mechanize"
gem "highline"
gem "www-delicious"
然后,当我运行“捆绑安装”时,它会使用它在 ree 1.8.7 中看到的 gem:
Using highline (1.6.1)
Using nokogiri (1.4.4)
Using mechanize (1.0.0)
Using www-delicious (0.4.0)
Using bundler (1.0.7)
Your bundle is complete! It was installed into /Users/kold/.rvm/gems/ree-1.8.7-2010.02
如果我运行“rvm info”,它会输出所有正确的信息,我什至可以毫无问题地手动安装 gem:
kold@Kevin-Olds-MacBook-Pro [master*]$ rvm info
ruby-1.9.2-p0@instapaper:
system:
uname: "Darwin Kevin-Olds-MacBook-Pro.local 10.4.0 Darwin Kernel Version 10.4.0: Fri Apr 23 18:28:53 PDT 2010; root:xnu-1504.7.4~1/RELEASE_I386 i386 i386"
bash: "/bin/bash => GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin10.0)"
zsh: "/bin/zsh => zsh 4.3.9 (i386-apple-darwin10.0)"
rvm:
version: "rvm 1.1.0 by Wayne E. Seguin (wayneeseguin@gmail.com) [http://rvm.beginrescueend.com/]"
ruby:
interpreter: "ruby"
version: "1.9.2p0"
date: "2010-08-18"
platform: "x86_64-darwin10.4.0"
patchlevel: "2010-08-18 revision 29036"
full_version: "ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-darwin10.4.0]"
homes:
gem: "/Users/kold/.rvm/gems/ruby-1.9.2-p0@instapaper"
ruby: "/Users/kold/.rvm/rubies/ruby-1.9.2-p0"
binaries:
ruby: "/Users/kold/.rvm/rubies/ruby-1.9.2-p0/bin/ruby"
irb: "/Users/kold/.rvm/rubies/ruby-1.9.2-p0/bin/irb"
gem: "/Users/kold/.rvm/rubies/ruby-1.9.2-p0/bin/gem"
rake: "/Users/kold/.rvm/rubies/ruby-1.9.2-p0/bin/rake"
environment:
PATH: "/Users/kold/.rvm/gems/ruby-1.9.2-p0@instapaper/bin:/Users/kold/.rvm/gems/ruby-1.9.2-p0@global/bin:/Users/kold/.rvm/rubies/ruby-1.9.2-p0/bin:/Users/kold/.rvm/bin:/usr/local/bin:/usr/local/mysql/bin:/opt/local/bin:/Users/kold/bin/:/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11/bin"
GEM_HOME: "/Users/kold/.rvm/gems/ruby-1.9.2-p0@instapaper"
GEM_PATH: "/Users/kold/.rvm/gems/ruby-1.9.2-p0@instapaper:/Users/kold/.rvm/gems/ruby-1.9.2-p0@global"
MY_RUBY_HOME: "/Users/kold/.rvm/rubies/ruby-1.9.2-p0"
IRBRC: "/Users/kold/.rvm/rubies/ruby-1.9.2-p0/.irbrc"
RUBYOPT: ""
gemset: "instapaper"
我只是不确定为什么要在 gemset 之外安装这些 gem。
更新 1:
$ rvm use ruby-1.9.2-p0@instapaper && which bundle
Using /Users/kold/.rvm/gems/ruby-1.9.2-p0 with gemset instapaper
/Users/kold/.rvm/gems/ruby-1.9.2-p0@instapaper/bin/bundle
kold@Kevin-Olds-MacBook-Pro [master*]$ bundle --verbose check
Using highline (1.6.1) from /Users/kold/.rvm/gems/ree-1.8.7-2010.02/specifications/highline-1.6.1.gemspec
Using nokogiri (1.4.4) from /Users/kold/.rvm/gems/ree-1.8.7-2010.02/specifications/nokogiri-1.4.4.gemspec
Using mechanize (1.0.0) from /Users/kold/.rvm/gems/ree-1.8.7-2010.02/specifications/mechanize-1.0.0.gemspec
Using www-delicious (0.4.0) from /Users/kold/.rvm/gems/ree-1.8.7-2010.02/specifications/www-delicious-0.4.0.gemspec
Using bundler (1.0.7) from /Users/kold/.rvm/gems/ruby-1.9.2-p0@instapaper/gems/bundler-1.0.7/lib/bundler
Your bundle is complete! It was installed into /Users/kold/.rvm/gems/ree-1.8.7-2010.02
【问题讨论】:
-
你能发布你从以下得到的输出吗:
rvm use ruby-1.9.2-p0@instapaper && which bundle -
是的,它发布在“更新 1”下