2011-11-01 17 views
12

यह समस्या अब कुछ दिनों के लिए मुझे गुस्सा दिलाना है ... जब भी मैं .bring_to_front विधिलोड करने के लिए ऐसी कोई फाइल नहीं - ffi_c (LoadError)

require "rubygems" 
require "watir" 

browser = Watir::Browser::new 
browser.bring_to_front 

उपयोग कर रहा हूँ मैं इस त्रुटि मिलती है:

(...)rubygems/custom_require.rb:36:in `require': no such file to load -- ffi_c (LoadError) 

मैंने सफलता के बिना एफएफआई/वॉटर/रूबी/नेटबीन को अनइंस्टॉल करने और पुनर्स्थापित करने का प्रयास किया।

लाइन 36 custom_require.rb में

def require path 
if Gem.unresolved_deps.empty? or Gem.loaded_path? path then 
    gem_original_require path 
else 
    spec = Gem.searcher.find_active path 
    unless spec then 
    found_specs = Gem.searcher.find_in_unresolved path 
    unless found_specs.empty? then 
     found_specs = [found_specs.last] 
    else 
     found_specs = Gem.searcher.find_in_unresolved_tree path 
    end 
    found_specs.each do |found_spec| 
     Gem.activate_spec found_spec 
    end 
    end 
    return gem_original_require path #problem 
end 

* स्थानीय रत्न है *

archive-tar-minitar (0.5.2) 
builder (3.0.0) 
childprocess (0.2.2) 
columnize (0.3.4) 
commonwatir (2.0.4) 
ffi (1.0.10 x86-mingw32) 
firewatir (1.9.4, 1.8.1) 
hoe (2.12.3, 2.8.0) 
json (1.6.1) 
json_pure (1.6.1) 
linecache19 (0.5.12) 
minitest (2.7.0, 2.6.2, 1.6.0) 
nokogiri (1.5.0 x86-mingw32) 
rake (0.9.2.2, 0.9.2, 0.8.7) 
rautomation (0.6.3) 
rdiscount (1.6.8) 
rdoc (3.11, 2.5.8) 
require_all (1.2.0) 
ruby-debug-base19 (0.11.25) 
ruby-debug-ide (0.4.16, 0.4.9) 
ruby_core_source (0.1.5) 
rubyzip (0.9.4) 
s4t-utils (1.0.4) 
selenium-webdriver (2.10.0) 
user-choices (1.1.6.1) 
watir (2.0.4) 
watir-webdriver (0.3.5) 
win32-api (1.4.8 x86-mingw32) 
win32-process (0.6.5) 
windows-api (0.4.0) 
windows-pr (1.2.1) 
xml-simple (1.1.1, 1.1.0) 
+1

0) रूबी 1.9.2 और वाटिर 2.0.3 के साथ मेरे लिए काम करता है 1) वॉटर का कौन सा संस्करण आप उपयोग कर रहे हैं। 2) हमें अधिक त्रुटि की आवश्यकता है। संकेतित फ़ाइल में रेखा 36 उस विधि को पारित पैरामीटर के साथ काम कर रहा है, यह देखने की आवश्यकता है कि उस पंक्ति को कहां कहा जाता है। 3) क्या आप कमांड लाइन से 'जेम लिस्ट' कर सकते हैं और उस जानकारी को अपने प्रश्न में जोड़ सकते हैं। –

+0

1. रूबी 1.9.2 + वॉटर 2.0.4 – drake10k

+0

अतिरिक्त जानकारी को शामिल करने के लिए धन्यवाद, हालांकि यह वास्तविक त्रुटि है जो मैं देखना चाहता था, मैं पहले से ही गया और कस्टम_रेक्वायर फ़ाइल को देखा .. –

उत्तर

20

मुझे लगता है कि लापता फ़ाइल FFI मणि से संबंधित है। मुझे एफएफआई v1.0.10 का उपयोग करने की कोशिश करने में समस्याएं थीं (जब यह इंस्टॉल करने के लिए चला गया था, और वेबड्राइवर कोड से संबंधित कुछ के कारण) तो मेरे बॉक्स पर मेरे पास उस मणि के v1.0.9 इंस्टॉल हैं।

मैं कहूंगा कि उस मणि को एक संस्करण को वापस रोल करने की कोशिश करके खोना बहुत कुछ नहीं है। कमांड लाइन प्रकार से

gem uninstall ffi 

एक बार यह तो

gem install ffi -v 1.0.9 

किया है देखने के लिए कि है कि आप के लिए चीजों को ठीक करता है।

अद्यतन FFI मणि के बाद से पिछले 1.1.0 अपडेट किया गया है और इन संस्करणों हालांकि मणि पूर्व संकलित नहीं है, watir और watir-webdriver के साथ ठीक से काम करने लगते हैं, और जब यह स्थापित करता है कोड को संकलित करने के है। यदि आप एक पीसी पर चल रहे हैं क्या आप rubyinstaller साइट

डाउनलोड पर downloads page से इसे पाने और devkit स्थापित पहले, फिर एक नया आदेश खोल सकते हैं,, खिड़कियां के लिए रूबी विकास किट स्थापित करने के लिए उर्फ ​​'devkit' की आवश्यकता होगी इसका मतलब है लाइन खिड़की और

gem install ffi 

FFI मणि का नवीनतम संस्करण प्राप्त करने के लिए उपयोग

अगर किसी कारण है कि आप के लिए काम नहीं करता है के लिए, आप हमेशा मूल उपरोक्त निर्देश के थोड़ा पुराने संस्करण स्थापित करने के लिए उपयोग कर सकते हैं एफएफआई मणि

+3

वास्तव में आप हैं सही। इसने समस्या हल की। आपके सहयोग के लिए धन्यवाद। – drake10k

+1

मेरे लिए भी काम किया, धन्यवाद! – holaSenor

+1

आपको बहुत बहुत धन्यवाद। एक ही मुद्दा था, यह पाया और यह भी मेरे मुद्दे को हल किया। –

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