Ответы:
Используйте -v
флаг:
$ gem install fog -v 1.8
gem list | grep rake
= rake (10.1.1, 10.1.0, 0.8.7)
.. у меня есть проект rails 2.3.5 и еще одна версия 3.0, над которой я работаю одновременно .. как мне использовать определенную версию rake для каждого проекта (т.е. по команде линия?)
rake _10.1.1_ ...
должен работать, для тех, кто хочет знать :)
Используйте --version
параметр (ярлык -v
):
$ gem install rails -v 0.14.1
Вы также можете использовать компараторы версий, такие как >=
или~>
$ gem install rails -v '~> 0.14.0'
Или с более новыми версиями gem даже:
$ gem install rails:0.14.4 rubyzip:'< 1'
…
Successfully installed rails-0.14.4
Successfully installed rubyzip-0.9.9
~>
?
для Ruby 1.9+ используйте двоеточие.
gem install sinatra:1.4.4 prawn:0.13.0
gem sources
, если он пуст, добавьте репо с помощью этой команды:gem sources -a https://rubygems.org/
gem -v
шоу 1.8.23
против твоих 2.2.2
. Похоже, эта функция новая :)
Как уже отмечали другие, в общем случае используйте -v
флаг для gem install
команды.
Если вы разрабатываете драгоценный камень локально, после вырезания драгоценного камня из вашего gemspec:
$ gem install gemname-version.gem
Предполагая версию 0.8, это будет выглядеть так:
$ gem install gemname-0.8.gem
Linux
Чтобы установить другую версию ruby, проверьте последнюю версию пакета, используя, apt
как показано ниже:
$ apt-cache madison ruby
ruby | 1:1.9.3 | http://ftp.uk.debian.org/debian/ wheezy/main amd64 Packages
ruby | 4.5 | http://ftp.uk.debian.org/debian/ squeeze/main amd64 Packages
Затем установите его:
$ sudo apt-get install ruby=1:1.9.3
Чтобы проверить текущую версию, запустите:
$ gem --version # Check for the current user.
$ sudo gem --version # Check globally.
Если версия все еще старая, вы можете попробовать переключить версию на новую с помощью ruby version manager ( rvm
) с помощью:
rvm 1.9.3
Примечание. Вы можете использовать префикс, sudo
если он rvm
был установлен глобально. Или запустить, /usr/local/rvm/scripts/rvm
если ваша команда rvm
не в вашей глобальной PATH
. Если процесс установки rvm не удался, см. Раздел устранения неполадок.
Поиск проблемы:
Если у вас все еще есть старая версия, вы можете попробовать установить rvm (менеджер версий ruby) через:
sudo apt-get install curl # Install curl first
curl -sSL https://get.rvm.io | bash -s stable --ruby # Install only for the user.
#or:# curl -sSL https://get.rvm.io | sudo bash -s stable --ruby # Install globally.
затем, если установлен локально (только для текущего пользователя), загрузите rvm через:
source /usr/local/rvm/scripts/rvm; rvm 1.9.3
если глобально (для всех пользователей), то:
sudo bash -c "source /usr/local/rvm/scripts/rvm; rvm 1.9.3"
если у вас все еще есть проблемы с новой версией ruby, попробуйте установить ее с помощью rvm через:
source /usr/local/rvm/scripts/rvm && rvm install ruby-1.9.3 # Locally.
sudo bash -c "source /usr/local/rvm/scripts/rvm && rvm install ruby-1.9.3" # Globally.
если вы хотите установить некоторые гемы глобально и у вас уже установлен rvm, вы можете попробовать:
rvmsudo gem install [gemname]
вместо:
gem install [gemname] # or:
sudo gem install [gemname]
Примечание. Предпочтительно НЕ использовать sudo для работы с гемами RVM. Когда вы выполняете команду sudo, вы запускаете команды от имени пользователя root, другой пользователь в другой оболочке и, следовательно, все настройки, выполненные для вас RVM, игнорируются, пока команда выполняется под командой sudo (такие как GEM_HOME и т. Д.). Итак, повторяю, как только вы выполняете sudo, вы работаете как пользователь корневой системы, который очистит вашу среду, а также любые файлы, которые она создает, не сможет быть изменен вашим пользователем и приведет к странным вещам.
gem uninstall fog
. Он спросит вас, какую версию удалить, если у вас более одной версии.