Изменить пакет установить версию Ruby
Я новичок в Ruby/Rails, так что простите меня, если это тривиальный вопрос. Всякий раз, когда я запускаю bundle install
, он устанавливает все в vendor/bundle/ruby /1.8 вместо vendor/bundle/ruby /1.9.1, которая является версией Ruby, которую я использую. Когда я запускаю ruby -v
, я получаю правильную версию 1.9.1, но пакетная установка настаивает на версии 1.8 по какой-то причине, и это вызывает много ошибок с базовыми функциями Rails.
Как я могу проинструктировать пакет для работы с 1.9.1 (и желательно удалить любые следы Ruby 1.8)?
Спасибо!
EDIT: я сделал все этот ответ, и я не получаю никаких следов 1.8
ИЗМЕНИТЬ СНОВА: Ну, это работает как-то. Возможно, перезапуск Bash исправил его. В любом случае существует ли общее решение для принудительного использования bundle install
для использования конкретной версии Ruby, чтобы это не повторилось или кому-то еще?
Ответы
Ответ 1
Для меня проблема заключалась в том, что я случайно сконфигурировал шеф-повар, чтобы установить комплектщик с версией рубиновой версии системы, которая ставит связки в системный путь:
/usr/local/bin/bundle
Используется эта версия пакета
/usr/bin/gem
(как отмечено в комментарии выше), который принудительно выполнил версию 1.8
Действительно, я хотел, чтобы он был установлен в расположение прокладок .rbenv
для моего пользователя.
Чтобы устранить проблему, я удалил пакет, запустив его как root, который удалил его из /usr/local/bin
.
Я уже установил связку с драгоценным камнем в моей желаемой рубиновой версии для пользователя, поэтому теперь, когда я звоню which bundle
, я вижу:
/[user_home]/.rbenv/shims/bundle
и теперь, когда я запускаю bundle install
, связка связана с текущей версией ruby.
Ответ 2
Пакет работает с драгоценными камнями. Убедитесь, что команда gem также использует правильную версию ruby: на Ubuntu Linux мне пришлось символически ссылаться /usr/bin/gem на/usr/bin/gem1.9.1
(Единственная разница между /usr/bin/gem 1.8 и/usr/bin/gem1.9.1 была первой строкой, определяющей используемую рубиновую версию: #!/usr/bin/ruby1.9.1
)