2010-07-21 21 views
6

इंस्टॉल करें मैं उबंटू पर आरएसपीसी-रेल स्थापित करने की कोशिश कर रहा हूं लेकिन मुझे कुछ समस्याएं आ रही हैं।"बंडल इंस्टॉल" विफल रहता है जबकि rspec

1) मेरी Gemfile बदल दिया करने के लिए:

यहाँ मेरी सटीक कदम हैं

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) टाइप करें "बंडल स्थापित" और मैं निम्नलिखित त्रुटि मिलती है:

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

3) अगर मैं अपने इंस्टॉलेशन निर्देशों के साथ जारी रखता हूं और टाइप करता हूं "रेल उत्पन्न करता है rspec: मुझे निम्न त्रुटि मिलती है (लेकिन यह # 2 विफल होने के कारण हो सकती है)

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

मैं Google पर इसके लिए समाधान ढूंढने में असमर्थ था। यह ट्यूटोरियल में link है जिसे मैं अनुसरण करने का प्रयास कर रहा हूं। मेरा देव पर्यावरण उबंटू 10.04 है, रुबी 1.8.7, रेल 3.0.0 बीटा 4.

धन्यवाद।

+1

कैसे के बारे में 'sudo बंडल install', लेकिन नहीं एक अच्छा विचार है। – randika

+0

यदि आप 'ls -l/home/steve/.gem /' टाइप करते हैं तो आपको क्या आउटपुट मिलता है? –

उत्तर

8

आपके पास शायद आपके .gem फ़ोल्डर में एक गलत गलत कॉन्फ़िगरेशन है। आप

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

का उपयोग कर अनुमतियों को रीसेट कर सकते हैं या आप आसानी से फ़ोल्डर को हटाने और बंडलर/rubygems इसे पुन: कर सकते हैं।

+0

धन्यवाद! मेरे लिए एक ही मुद्दा फिक्स्ड .. मेरी .gem निर्देशिका रूट के स्वामित्व में था। –

2

क्या आपके पास विकास कॉन्फ़िगरेशन में आरएसपीईसी भी शामिल नहीं होना चाहिए?

मैं यहाँ परीक्षण कर सकते हैं नहीं है - लेकिन मुझे लगता है अगर आप में शामिल हैं:

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

... अपने समूह में: विकास करना ... अंत ब्लॉक, इस मुद्दे को ठीक कर सकता है। यह मेरे लिए तार्किक प्रतीत होता है क्योंकि मुझे लगता है कि आवश्यक फ़ाइलों को उत्पन्न करने में सक्षम होने के लिए rspec-rails को rspec कार्यक्षमता की आवश्यकता होती है। आप शायद के रूप में अच्छी अगर आप ब्लॉक इस तरह बनाने के लिए सुरक्षित कर रहे हैं:

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 

... इस तरह के रूप में आवश्यक फाइलों दोनों परिवेशों में शामिल हो रही किया जाना चाहिए। मुझे यकीन नहीं है, मुझे उम्मीद है कि इससे मामलों को और भ्रमित नहीं किया जाएगा (मैं कुल रेल न्यूबी हूं!)

+0

मैं सहमत हूं, मुझे पूरा यकीन है कि उन्हें एक साथ रहने की आवश्यकता है। –

+0

यह मेरी समस्या हल करता है।धन्यवाद! – Andree

1

यदि आपके ~/.gem फ़ोल्डर का स्वामित्व बदलना काम नहीं करता है तो स्वामित्व की जांच करने का प्रयास करें फ़ोल्डर की आप में हैं आपके फ़ोल्डर अनुमतियाँ टाइप देखने के लिए:।

$ ls -la

आप कुछ भी है कि कहते हैं, "जड़ रूट" यह आपके वर्तमान उपयोगकर्ता खाते के लिए बदलने की आवश्यकता को देखते हैं।

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

1

सिर्फ अपने आवेदन पथ में .bundle निर्देशिका को निकालने

संबंधित मुद्दे