2010-12-03 9 views
19

एक Rails3 एप्लिकेशन परिनियोजित करने और जवाहरात द्वारा स्थापित 'बंडल --deployment स्थापित' को खोजने के लिए रेक हो रही कुछ मुद्दों पर हो रहा है:, में है कि मणिरेल 3 एप्लिकेशन तैनाती, Bundler और रैक मुद्दों

$ rake db:migrate 
(in /home/jrdev/rails/testapp) 
rake aborted! 
!!! Missing the mysql2 gem. Add it to your Gemfile: gem ‘mysql2’ 

लेकिन Gemfile है, और विक्रेता/बंडल फ़ोल्डर में भी है ...

$ bundle show mysql2 
/home/jrdev/rails/testapp/vendor/bundle/ruby/1.8/gems/mysql2-0.2.6 

मेरे .gemrc फ़ाइल:

gemhome: /home/jrdev/.gems 
gempath: 
- /home/jrdev/.gems 
- /usr/lib/ruby/gems/1.8 

मैंने सोचा था कि rails3 एक पीपीएस में पहले से ही बंडलर कोड था, यह पता लगाने के लिए कि कौन से रत्न उपयोग करते हैं? मैं जानता हूँ कि मैं सही रेक, उपयोग कर रहा हूँ भी (रेक db: विस्थापित --trace /home/jrdev/rails/testapp/vendor/bundle/ruby/1.8/bin/rake में शुरू होता है)। बंडलर के निष्पादन का उपयोग करके वही परिणाम।

:(

उत्तर

50

आप गुस्सा जानता हूँ कि मैं का समाधान नहीं होगा यह पूछने के एक मिनट बाद।

मेरी डेटाबेस.आईएमएल फ़ाइल अभी भी 'mysql2' के बजाय 'mysql' एडाप्टर को कॉल कर रही थी।

फिर भी, क्या एक अस्पष्ट त्रुटि संदेश!

+3

उस उत्तर के लिए धन्यवाद। वास्तव में। – x10

+1

ओह मेरे भगवान। यह एक भयानक त्रुटि संदेश है! इसके लिए धन्यवाद। – kayluhb

+1

धन्यवाद! हमारे पास एक ही समस्या थी। – phil

0

/home/jrdev/rails/testapp में, आप एक फ़ाइल खोजना चाहिए Gemfile कहा जाता है। इसे में देखो और बस लाइन

gem 'mysql2' 
कहीं

जोड़ें।

+0

स्कैन, मैं उल्लेख किया है कि लाइन मेरी Gemfile में था, अन्यथा यह बंडलर द्वारा स्थापित किया गया है नहीं होगा। – joraff

+0

असंबंधित सवाल: आप किस प्रकार कोड पर प्रकाश डाला अपने जवाब में उस पथ? – joraff

+0

आह, हाँ, मैं बेवकूफ हूँ, खेद है। इसके अलावा, आप उन्हें पाठ (दाएँ फलक पर पढ़ें) में उजागर करने के लिए 'संकेत में कोई भी स्ट्रिंग संलग्न कर सकते हैं। – Lanbo

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