Odpowiedzi:
Użyj -vflagi:
$ gem install fog -v 1.8
gem list | grep rake= rake (10.1.1, 10.1.0, 0.8.7).. Mam projekt Rails 2.3.5 i kolejną wersję 3.0, nad którą pracuję w tym samym czasie .. Jak korzystać z konkretnej wersji prowizji dla każdego projektu (tj. na polecenie linia?)
rake _10.1.1_ ...powinien działać, dla każdego, kto chce wiedzieć :)
Użyj --versionparametru (skrót -v):
$ gem install rails -v 0.14.1
Możesz także użyć komparatorów wersji, takich jak >=lub~>
$ gem install rails -v '~> 0.14.0'
Lub nawet z nowszymi wersjami klejnotów :
$ gem install rails:0.14.4 rubyzip:'< 1'
…
Successfully installed rails-0.14.4
Successfully installed rubyzip-0.9.9
~>?
dla Ruby 1.9+ użyj dwukropka ..
gem install sinatra:1.4.4 prawn:0.13.0
gem sources, jeśli jest pusty, dodaj repozytorium za pomocą tego polecenia:gem sources -a https://rubygems.org/
gem -vprogramy 1.8.23kontra twoje 2.2.2. Wygląda na to, że ta funkcja jest nowa :)
Jak zauważyli inni, zwykle używaj -vflagi dla gem installpolecenia.
Jeśli tworzysz klejnot lokalnie, po wycięciu klejnotu ze swojego klejnotu:
$ gem install gemname-version.gem
Zakładając wersję 0.8, wyglądałoby to tak:
$ gem install gemname-0.8.gem
Linux
Aby zainstalować inną wersję Ruby, sprawdź najnowszą wersję pakietu, korzystając z aptponiższych instrukcji :
$ 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
Następnie zainstaluj:
$ sudo apt-get install ruby=1:1.9.3
Aby sprawdzić aktualną wersję, uruchom:
$ gem --version # Check for the current user.
$ sudo gem --version # Check globally.
Jeśli wersja jest nadal stara, możesz spróbować zmienić wersję na nową za pomocą menedżera wersji Ruby ( rvm) poprzez:
rvm 1.9.3
Uwaga: Możesz go poprzedzić, sudojeśli rvmzostał zainstalowany globalnie. Lub uruchom, /usr/local/rvm/scripts/rvmjeśli twoje polecenie rvmnie jest w twojej globalnej PATH. Jeśli proces instalacji rvm nie powiódł się, zobacz sekcję dotyczącą rozwiązywania problemów.
Rozwiązywanie problemów:
Jeśli nadal masz starą wersję, możesz spróbować zainstalować rvm (menedżer wersji Ruby) poprzez:
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.
następnie, jeśli jest zainstalowany lokalnie (tylko dla bieżącego użytkownika), załaduj rvm poprzez:
source /usr/local/rvm/scripts/rvm; rvm 1.9.3
jeśli globalnie (dla wszystkich użytkowników), to:
sudo bash -c "source /usr/local/rvm/scripts/rvm; rvm 1.9.3"jeśli nadal masz problem z nową wersją Ruby, spróbuj zainstalować ją przez rvm poprzez:
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.jeśli chcesz zainstalować niektóre klejnoty na całym świecie i masz już zainstalowany RVM, możesz spróbować:
rvmsudo gem install [gemname]
zamiast:
gem install [gemname] # or:
sudo gem install [gemname]Uwaga: Preferowane jest NIE używanie sudo do pracy z klejnotami RVM. Kiedy wykonujesz sudo, uruchamiasz polecenia jako root, inny użytkownik w innej powłoce, a zatem cała konfiguracja, którą wykonał dla ciebie RVM, jest ignorowana, podczas gdy polecenie działa w sudo (takie jak GEM_HOME, itp ...). Powtórzmy więc, że gdy tylko „sudo” uruchomisz jako użytkownik systemu root, który wyczyści twoje środowisko, a także wszelkie utworzone przez niego pliki nie będą mogły być modyfikowane przez użytkownika i spowodują dziwne rzeczy.
gem uninstall fog. Zostaniesz zapytany, którą wersję odinstalować, jeśli masz więcej niż jedną.