2012-10-26 16 views
7

Konfiguruję środowisko Ruby na szynach przy użyciu http://jaysonrowe.blogspot.com/2012/04/installing-ruby-and-rails-on-fedora.html. Zainstalowałem mysql 5.5. Teraz, kiedy klonowanie projekt z bitbucket i uruchomić pakiet instalacyjny, otrzymuję następujący błąd:Nie można znaleźć Capistrano-2.13.3 w żadnym ze źródeł

[[email protected] ruby_repo]$ bundle install 
Fetching gem metadata from http://rubygems.org/...... 
Fetching gem metadata from http://rubygems.org/.. 
Could not find capistrano-2.13.3 in any of the sources 

Kiedy wykonać szyny -v w katalogu ruby_repo, otrzymuję następujący błąd:

[[email protected] ruby_repo]$ rails -v 
Could not find abstract-1.0.0 in any of the sources 
Run `bundle install` to install missing gems. 

Poniżej jest moje Gemfile:

source 'http://rubygems.org' 

gem 'rails', '3.0.10' 

# Bundle edge Rails instead: 
# gem 'rails', :git => 'git://github.com/rails/rails.git' 
gem 'rmagick' 
gem "will_paginate", "~> 3.0.pre2" 
gem 'mysql2','0.2.7' 
gem "nokogiri" 
gem 'activemerchant', :require => 'active_merchant' 
gem "webrobots", "~> 0.0.10" 
gem 'mixpanel' 
gem 'thinking-sphinx', '2.0.10' 
gem 'whenever', :require => false 
gem 'json' 
gem 'vimeo' 
gem "koala" 
gem 'typhoeus' 
gem 'delayed_job_active_record' 
gem "delayed_job" 
gem 'mini_fb' 
gem 'daemons' 
gem 'annotate' 
gem 'capistrano' 
gem 'rvm-capistrano' 
gem 'grosser-ssl_requirement', :require => 'ssl_requirement' 
gem 'acts-as-taggable-on' 
gem 'capistrano' 
gem 'rvm-capistrano' 
# Use unicorn as the web server 
# gem 'unicorn' 

# Deploy with Capistrano 
#gem 'capistrano' 
#gem 'capistrano-ext' 
#To use debugger (ruby-debug for Ruby 1.8.7+, ruby-debug19 for Ruby 1.9.2+) 
# gem 'ruby-debug' 


# Bundle the extra gems: 
# gem 'bj' 
# gem 'nokogiri' 
# gem 'sqlite3-ruby', :require => 'sqlite3' 
# gem 'aws-s3', :require => 'aws/s3' 

# Bundle gems for the local environment. Make sure to 
# put test-only gems in this group so their generators 
# and rake tasks are available in development mode: 
# group :development, :test do 
# gem 'webrat' 
# end 

Kiedy wykonać listę gem, mam następujący wyjście

*** LOCAL GEMS *** 

actionmailer (3.2.8) 
actionpack (3.2.8) 
activemodel (3.2.8) 
activerecord (3.2.8) 
activeresource (3.2.8) 
activesupport (3.2.8) 
arel (3.0.2) 
builder (3.0.4) 
bundler (1.2.1) 
capistrano (2.13.4) 
coffee-rails (3.2.2) 
coffee-script (2.2.0) 
coffee-script-source (1.4.0) 
erubis (2.7.0) 
execjs (1.4.0) 
highline (1.6.15) 
hike (1.2.1) 
i18n (0.6.1) 
journey (1.0.4) 
jquery-rails (2.1.3) 
json (1.7.5) 
mail (2.4.4) 
mime-types (1.19) 
multi_json (1.3.6) 
mysql2 (0.3.11) 
net-scp (1.0.4) 
net-sftp (2.0.5) 
net-ssh (2.6.1) 
net-ssh-gateway (1.1.0) 
polyglot (0.3.3) 
rack (1.4.1) 
rack-cache (1.2) 
rack-ssl (1.3.2) 
rack-test (0.6.2) 
rails (3.2.8) 
railties (3.2.8) 
rake (0.9.2.2) 
rdoc (3.12) 
rubygems-bundler (1.1.0) 
rvm (1.11.3.5) 
sass (3.2.1) 
sass-rails (3.2.5) 
sprockets (2.1.3) 
sqlite3 (1.3.6) 
thor (0.16.0) 
tilt (1.3.3) 
treetop (1.4.11) 
tzinfo (0.3.33) 
uglifier (1.3.0) 

Jednak kiedy tworzę zupełnie nowy projekt, nie napotykam na taki problem. Czy ktoś może mi powiedzieć, jaki może być problem?

Odpowiedz

12

Usuń zawartość pliku Gemfile.lock lub samego pliku.

+1

Czy możesz wyjaśnić, dlaczego to rozwiąże problem? –

+0

Miałem ten sam problem (nie mogłem znaleźć capistrano-2.13.3 w żadnym ze źródeł). Wygląda na to, że – Umberto

+0

... ten problem można łatwo rozwiązać w ten sposób. Gemfle.lock to migawka puli gemów zarządzanych przez Bundler. Jeśli uruchomisz "instalację pakietu" po usunięciu pliku, nowa migawka zostanie utworzona bez żadnych nieaktualnych odniesień. Więcej informacji: http://gembundler.com/rationale.html. – Umberto

55

Ta wersja nie istnieje od rubygems.org. Zaktualizuj capistrano, uruchamiając aktualizację pakietu w ten sposób:

bundle update capistrano 

W ten sposób aktualizujesz tylko Capistrano do aktualnej wersji. Jeśli usuniesz plik Gemfile.lock i uruchomisz pakiet, wszystkie wersje gem zostaną zaktualizowane, co często nie jest tym, czego potrzebujesz.

+4

To jest bezpieczniejsza trasa, jeśli masz dużo klejnotów, które nie mają określonych wersji. Jeśli usuniesz Gemfile.lock, zainstaluje on najnowsze wersje każdego klejnotu, który nie jest zablokowany do wersji w Gemfile.Aktualizowanie pakietu aktualizuje tylko capistrano. – bnferguson

+1

Czy ktoś wie, dlaczego 2.13.4 został usunięty z rubygemów? Czy był jakiś naprawdę poważny problem z bezpieczeństwem? –

+0

Sprawdź zatwierdzenia na github: https://github.com/capistrano/capistrano/commits/master – Fa11enAngel

0

Po prostu problem. Producent problemów to rvm. Tworzę zestaw gemsetów dla mojej aplikacji i uruchamiam pakiet w tym zestawie. Jednak z jakiegoś powodu, kiedy uruchamiam szyny c lub pakuję exec rails, wciąż wygląda on w globalnym zestawie gemów dla potrzebnych klejnotów.

Po przejściu do globalnego zestawu gemsetów i zainstalowaniu wszystkich klejnotów działa. Nie jestem pewien, czy jest to tylko problem z rvm gemset, czy połączenie pakietu + zestawu rvm.

Powiązane problemy