2010-07-21 6 views
6

Ubuntu'da rspec rayları yüklemeye çalışıyorum ancak bazı sorunlarla karşılaşıyorum."bundle install" yüklenirken başarısız oluyor rspec

1) Benim Gemfile Değişti için: Burada

benim kesin adımlar

source 'http://rubygems.org' 

gem 'rails', '3.0.0.beta4' 
gem 'sqlite3-ruby', '1.2.5', :require => 'sqlite3' 

group :development do 
    gem 'rspec-rails', '2.0.0.beta.17' 
end 

group :test do 
    gem 'rspec', '2.0.0.beta.17' 
end 

2) Tip "paket yüklemek" ve aşağıdaki hatayı alıyorum:

/usr/lib/ruby/1.8/fileutils.rb:243:in `mkdir': Permission denied - /home/steve/.gem/specs (Errno::EACCES)

3) Yükleme yönergelerime devam edip "raylar rspec: install" yazıp yazmam gerekirse, aşağıdaki hatayı alıyorum (ancak # 2 başarısızlıkla sonuçlanabilir)

Could not find gem 'rspec (= 2.0.0.beta.17, runtime)' in the gems available on this machine.

Bunun için Google'da bir çözüm bulamadık. Bu, takip etmeye çalıştığım eğiticiye link'dur. Benim dev çevre Ubuntu 10.04, Ruby 1.8.7, Rails 3.0.0 beta 4.

Teşekkürler.

+1

nasıl sudo demeti install'ın değil iyi bir fikir 'hakkında. – randika

+0

Eğer ls -l/home/steve/.gem/'yazarsanız ne tür bir çıktı alırsınız? –

cevap

8

.gem klasörünüzde büyük olasılıkla bir yanlış yapılandırmanız olabilir. Sen

$ sudo chown -R steve:steve ~/.gem 

kullanarak izinleri sıfırlamak veya kolayca klasörü kaldırmak ve paketleyici/rubygems onu yeniden sağlayabilirsiniz.

+0

Teşekkürler! Benim için aynı sorunu düzeltildi .. Benim .gem dizini kök tarafından sahip olunan. –

2

Ayrıca rspec geliştirme yapılandırmasına dahil edilmemelidir mi?

Burada test edemez - ama eklerseniz herhalde:

gem 'rspec', '2.0.0.beta.17' 

... grubunuzdaki: geliştirme yapmak ... uç bloğu, sorunu çözmek olabilir. Gerekli dosyaları üretebilmek için rspec-rayların rspec işlevselliğine ihtiyacı olduğunu düşündüğümden mantıklı görünmekteyim. Siz de sen bloklar böyle yaparsanız muhtemelen daha güvendesin:

group :development do 
    gem 'rspec', '2.0.0.beta.17' 
    gem 'rspec-rails', '2.0.0.beta.17' 
end 

group :test do 
    gem 'rspec', '2.0.0.beta.17' 
    gem 'rspec-rails', '2.0.0.beta.17' 
end 

...

o yolu olarak gerekli dosyaları iki ortamda da dahil olma edilmelidir. Kesin olarak bilmiyorum, umarım bu konu daha fazla karışmamıştır (toplam Rails kullanıcısıyım!)

+0

Katılıyorum, birlikte olmaları gerektiğine eminim. –

+0

Bu sorunumu çözüyor.Teşekkürler! – Andree

1

~/.gem klasörünüzün sahipliğini değiştirmek işe yaramıyorsa, mülkiyeti kontrol etmeyi deneyin. klasörün Şu anda bulunduğunuz klasör izinleri yazın denetlemek için:.

$ ls -la

"kök kök" bunun geçerli kullanıcı hesabına değiştirilmesi gerekir diyor bir şey görürseniz

.

$ sudo chown -R steve:steve /path/to/folder

1

sadece uygulama yolunda .bundle dizini kaldırmak