Ruby on rails Ubuntu12中的Capybara gem安装错误

Ruby on rails Ubuntu12中的Capybara gem安装错误,ruby-on-rails,ruby,gem,rvm,capybara,Ruby On Rails,Ruby,Gem,Rvm,Capybara,Iam正在尝试执行命令bundle install它正在显示错误消息 Gem::InstallError: capybara requires Ruby version >= 1.9.3. An error occurred while installing capybara (2.1.0), and Bundler cannot continue. Make sure that `gem install capybara -v '2.1.0'` succeeds before bundl

Iam正在尝试执行命令
bundle install
它正在显示错误消息

Gem::InstallError: capybara requires Ruby version >= 1.9.3.
An error occurred while installing capybara (2.1.0), and Bundler cannot continue.
Make sure that `gem install capybara -v '2.1.0'` succeeds before bundling.
因此,我将我的
ruby 1.8.2
升级到
ruby 1.9.3
,并在
rvm中将其设置为默认值。

$ rvm list
rvm rubies

=* ruby-1.9.3-p448 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

 $ ruby -v
iam获得了ruby 1.9.3p0(2011-10-30版本33570)[x86\u 64-linux]

执行捆绑安装时出现相同错误

由于使用了
rvm
我使用命令
gem install capybara-v'2.1.0'
iam

ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions into the /var/lib/gems/1.9.1 directory
后来我尝试了
sudogem安装capybara-v'2.1.0'

它已成功安装

因此,我再次使用bundle install命令在我的gem文件中安装remaing gems,并再次显示上述错误

Gem::InstallError: capybara requires Ruby version >= 1.9.3.
An error occurred while installing capybara (2.1.0), and Bundler cannot continue.
Make sure that `gem install capybara -v '2.1.0'` succeeds before bundling.

我建议您设置项目相关的rvm设置。 转到项目文件夹并执行以下操作:

echo "ruby-1.9.3-p448" > .ruby-version
echo "myapp" > .ruby-gemset
gem install bundler
bundle install
关闭控制台,重新打开它,然后再次转到项目文件夹。然后,验证您的ruby版本是1.9.3-p448
ruby-v
),并执行以下操作:

echo "ruby-1.9.3-p448" > .ruby-version
echo "myapp" > .ruby-gemset
gem install bundler
bundle install

有关更多详细信息,请参阅此

在尝试之前确保已安装这些

sudo apt-get install libqt4-dev libqtwebkit-dev

奇怪的是,您似乎没有使用rvm安装的ruby版本。您是否可以键入
rvm use 1.9.3
,然后键入
ruby-v
==>这是否与
rvm列表中的版本相同?使用rvm时,在安装gems时,您永远不必执行
sudo
。我在使用“rvm use 1.9.3”时遇到此错误rvm不是一个函数,使用“rvm use…”选择红宝石将不起作用。您需要更改终端仿真器首选项以允许登录shell。有时需要使用
/bin/bash--login
作为命令。请访问示例是的,我解决了问题,所以现在可以了吗?那么您的rvm安装不正确?是的,现在可以:-)。。