Я попытался установить Ruby 2.0.0-p353 на Vagrant, используя ножевое соло. Когда я вошел в систему под именем root и vagrant, ruby -v
возвращает Ruby 2.0.0-p353.Пакетная установка использует другую версию Ruby?
Однако, когда я бегу bundle install
в проекте Rails, отображается следующее утверждение: версия Ruby,
Your Ruby version is 1.8.7, but your Gemfile specified 2.0.0
по умолчанию 1.8.7, так что я думаю, что bundle install
имеет в виду это. Что мне делать для решения этой проблемы?
$ cat site-cookbooks/ruby/recipes/default.rb
group 'rbenv' do
action :create
members 'vagrant'
append true
end
git '/usr/local/rbenv' do
repository 'git://github.com/sstephenson/rbenv.git'
reference 'master'
action :checkout
user "#{node.user}"
group 'rbenv'
end
directory '/usr/local/rbenv/plugins' do
owner "#{node.user}"
group 'rbenv'
mode 0755
action :create
end
template '/etc/profile.d/rbenv.sh' do
owner "#{node.user}"
group "#{node.user}"
mode 0644
end
git '/usr/local/rbenv/plugins/ruby-build' do
repository 'git://github.com/sstephenson/ruby-build.git'
reference 'master'
action :checkout
user "#{node.user}"
group 'rbenv'
end
execute 'ruby install' do
not_if "source /etc/profile.d/rbenv.sh; rbenv versions | grep #{node.ruby.version}"
command "source /etc/profile.d/rbenv.sh; rbenv install #{node.ruby.version}"
action :run
end
execute 'ruby change' do
command "source /etc/profile.d/rbenv.sh; rbenv global #{node.ruby.version}; rbenv rehash"
action :run
end
$ cat site-cookbooks/ruby/attributes/default.rb
default['user'] = 'root'
default['ruby']['version'] = '2.0.0-p353'
$ cat site-cookbooks/ruby/templates/default/rbenv.sh.rb
export RBENV_ROOT=/usr/local/rbenv
export PATH="$RBENV_ROOT/bin:$PATH"
eval "$(rbenv init -)"
это вы использовали 'rbenv', пожалуйста, попробуйте мой ответ отсюда: http://stackoverflow.com/questions/20531782/updating-ruby-version-with-rbenv-but-gems-apparently-not-updated/20535848 # 20535848 –
Благодарим вас за ответ. Я пытался сделать по этой странице, но я не мог. Например, 'bundle install' возвращает' Gem :: InstallError: activesupport требуется Ruby version> = 1.9.3.'. – ztbuz
Но у вас есть рубиновая версия> = 1.9.3, у вас есть 2.0.0? или 1,8,7? –