2010-11-12 14 views
8

रूबी नौसिखिया यहां एक जेम का उपयोग करने का तरीका जानने का प्रयास कर रहा है और इस तरह का अनुभव इतना अच्छा नहीं है।रूबी जेम - लोडरर

मणि के माध्यम से mysql2 स्थापित करने के बाद मैंने इसे एक साधारण फ़ाइल में उपयोग करने का प्रयास किया।

 
require 'mysql2' 

#client = Mysql2::Client.new(:host => "localhost", :username => "username") 

हालांकि जब मैं इस चलाने मैं: "गहरे लाल रंग का env" की

 
Tanner-Smiths-MacBook-Pro:Humans_vs_Zombies_Parse tanner$ gem list 

*** LOCAL GEMS *** 

abstract (1.0.0) 
actionmailer (3.0.1, 2.3.5, 1.3.6) 
actionpack (3.0.1, 2.3.5, 1.13.6) 
actionwebservice (1.2.6) 
activemodel (3.0.1) 
activerecord (3.0.1, 2.3.5, 1.15.6) 
activeresource (3.0.1, 2.3.5) 
activesupport (3.0.1, 2.3.5, 1.4.4) 
acts_as_ferret (0.4.3) 
arel (2.0.2) 
builder (2.1.2) 
capistrano (2.5.19, 2.5.2) 
cgi_multipart_eof_fix (2.5.0) 
daemons (1.1.0, 1.0.10) 
dnssd (1.4, 0.6.0) 
erubis (2.6.6) 
fastthread (1.0.7, 1.0.1) 
fcgi (0.8.8, 0.8.7) 
ferret (0.11.6) 
gem_plugin (0.2.3) 
highline (1.6.1, 1.5.0) 
hpricot (0.8.3, 0.6.164) 
i18n (0.4.2) 
jk-ferret (0.11.8.2) 
libxml-ruby (1.1.4, 1.1.2) 
mail (2.2.9) 
mime-types (1.16) 
mongrel (1.1.5) 
mysql2 (0.2.6) 
needle (1.3.0) 
net-scp (1.0.4, 1.0.1) 
net-sftp (2.0.5, 2.0.1, 1.1.1) 
net-ssh (2.0.23, 2.0.4, 1.1.4) 
net-ssh-gateway (1.0.1, 1.0.0) 
polyglot (0.3.1) 
rack (1.2.1, 1.0.1) 
rack-mount (0.6.13) 
rack-test (0.5.6) 
rails (2.3.5, 1.2.6) 
railties (3.0.1) 
rake (0.8.7, 0.8.3) 
RedCloth (4.2.3, 4.1.1) 
ruby-openid (2.1.8, 2.1.2) 
ruby-yadis (0.3.4) 
rubynode (0.1.5) 
sqlite3-ruby (1.3.2, 1.2.4) 
termios (0.9.4) 
thor (0.14.4) 
treetop (1.4.8) 
tzinfo (0.3.23) 
xmpp4r (0.5, 0.4) 

परिणाम::

 
RubyGems Environment: 
    - RUBYGEMS VERSION: 1.3.5 
    - RUBY VERSION: 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0] 
    - INSTALLATION DIRECTORY: /Library/Ruby/Gems/1.8 
    - RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby 
    - EXECUTABLE DIRECTORY: /usr/bin 
    - RUBYGEMS PLATFORMS: 
    - ruby 
    - universal-darwin-10 
    - GEM PATHS: 
    - /Library/Ruby/Gems/1.8 
    - /Users/tanner/.gem/ruby/1.8 
    - /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8 
    - GEM CONFIGURATION: 
    - :update_sources => true 
    - :verbose => true 
    - :benchmark => false 
    - :backtrace => false 
    - :bulk_threshold => 1000 
    - REMOTE SOURCES: 
    - http://gems.rubyforge.org/ 

 

Parse.rb:1:in `require': no such file to load -- mysql2 (LoadError) 
from Parse.rb:1 

फिर भी मेरी मणि सूची mysql2 शामिल मुझसे यहां क्या गलत हो रहा है? मेरे द्वारा इसका निर्धारण नहीं किया जा सकता।

धन्यवाद

-Tanner

+0

मुझे लगभग एक ही समस्या है, क्या आपको कोई समाधान मिला? –

उत्तर

6

जैसा कि आपने शायद देखा है, आपके पास रूबी के कई संस्करण स्थापित हैं। मैं कई रूबी संस्करणों को प्रबंधित करने के लिए RVM का उपयोग करके दृढ़ता से अनुशंसा करता हूं।

यह एक जंगली अनुमान है लेकिन यदि आप अपने आवेदन को चलाने के लिए कमांड लाइन का उपयोग नहीं कर रहे हैं और टेक्स्टमैट जैसे टूल का उपयोग कर रहे हैं तो आपको रूबी संस्करण को स्थापित रूबीजम्स के साथ रूबी संस्करण को इंगित करने के लिए एक शैल वेरिएबल "TM_RUBY" सेट करने की आवश्यकता हो सकती है (1.8.7 (200 9 -12-12 पैचलेवल 174))।

आप कोशिश कर सकते हैं:

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/irb 

rubygems स्थापित आईआरबी संस्करण को पाने के लिए और से प्रयास करें:

require 'rubygems' 
require 'mysql2' 

thats काम है और आप कि आप या तो आप अद्यतन कर सकता है के साथ खुश हैं रूबी के पुराने संस्करण को इंगित करने के लिए/usr/bin/ruby,/usr/bin/irb,/usr/bin/gem में प्रतीकात्मक लिंक या एक बार फिर से RVM इंस्टॉल करें और अपना जीवन अधिक आसान बनाएं।

6

प्रयास करें:

require 'rubygems' 
require 'mysql2' 
+0

'mysql2' के बजाए वही त्रुटि है, इसमें 'rubygems' है – Tanner

+0

आपका 'मणि एनवी' आउटपुट कैसा दिखता है? – subosito

+0

मूल पदों में परिणाम। – Tanner

0

अधिक जानकारी प्राप्त करने के लिए, आईआरबी शुरू करने और चलाने: टर्मिनल शीघ्र, रन पर इसके अलावा

 
require 'rubygems' 
gem 'mysql2' #=> does this cause an error? 
$:.grep /mysql2/ #=> if no error from previous line, please post what this shows 

" मणि सामग्री mysql2 "। क्या आप निम्नलिखित के साथ समाप्त होने वाले पथ देखते हैं?

 
lib/mysql2/error.rb 
lib/mysql2/mysql2.bundle 
lib/mysql2/client.rb 
lib/mysql2/result.rb 
lib/mysql2.rb 
+0

चल रहा है " 'rubygems' की आवश्यकता होती है" एक ही त्रुटि लाता "मणि सामग्री mysql2" से मैं सब कुछ लेकिन lib/mysql2/mysql2.bundle – Tanner

+0

इस आधार पर प्राप्त कर सकते हैं , 2 समस्याएं प्रतीत होती हैं। एक समय में एक लेते हैं। Rubygems लोड नहीं किया जा सकता है, क्योंकि आप इसकी आवश्यकता भी नहीं कर सकते हैं। क्या आप किसी अन्य रत्न की आवश्यकता है? क्या आपके पास रूबी के एक से अधिक संस्करण हैं?Irb में, कॉन्फ़िगर :: CONFIG ['bindir'] का मूल्य क्या है? Irb में, rubygems.rb: $: के लिए खोजने के लिए इसका उपयोग करें। प्रत्येक {| dir | फ़ाइलें = डिर [File.join (डीआईआर, '* मणि *। आरबी')]; फाइलें रखती है अगर फाइलें.नहीं? }; शून्य – Kelvin

+0

इसके अलावा, टर्मिनल पर, रन: हेड -1 \ 'कौन सा मणि \ '(बैकक्वॉट्स में)। आपको रूबी निष्पादन योग्य देखना चाहिए कि मणि कमांड का उपयोग कर रहा है। क्या इसकी निर्देशिका आईआरबी से प्राप्त कॉन्फ़िगर :: CONFIG ['bindir'] के मान से मेल खाती है? – Kelvin

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