2011-11-01 4 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) 

성공적으로 ffi/watir/ruby ​​/ netbeans를 제거하고 다시 설치해 보았습니다.

라인 (36) *

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와 Watir 2.0.3에서 작동합니다. 1) 어떤 Watir 버전을 사용하고 있습니까? 2) 우리는 더 많은 오류가 필요합니다. 표시된 파일의 36 번 줄은 해당 메서드에 전달 된 매개 변수와 함께 작동하며 해당 줄을 어디에 호출했는지 확인해야합니다. 3) 명령 줄에서 '보석 목록'을 작성하고 질문에 해당 정보를 추가 할 수 있습니까? –

+0

1. ruby ​​1.9.2 + watir 2.0.4 – drake10k

+0

추가 정보를 포함 해 주셔서 감사합니다. 그러나 실제로보고 싶었던 실제 오류가 더 많습니다. 이미 갔다가 custom_require 파일을 보았습니다. –

답변

20

내가 누락 된 파일이 FFI 보석에 관한 생각 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 

* LOCAL GEMS입니다. 나 자신이 FFI v1.0.10을 사용하려고 할 때 문제가 발생했다. (설치를 할 때, webdriver 코드와 관련하여) 나의 박스에는 v1.0.9의 gem이 설치되어있다.

나는 그 보석을 롤백하려고 노력함으로써 잃을 것이별로 없다고 말하고 싶습니다. 그것은 그 당신을 위해 일을 해결되는지 확인 후

gem install ffi -v 1.0.9 

수행 된 후에는

gem uninstall ffi 

명령 줄에서 다음을 입력.

업데이트 FFI 보석 이후 1.1.0 과거에 업데이트했으며이 버전은 그러나 보석은 미리 컴파일되지 않고, Watir과 및 Watir과 - webdriver와 잘 작동하는 것, 그리고 그것을 설치할 때 코드를 컴파일 할 수있다. 즉, Windows 용 Ruby 개발 키트 (별칭 : 'devkit')를 설치해야하는 경우 rubyinstaller 사이트의 downloads page에서 다운로드 할 수 있습니다.

devkit을 먼저 다운로드하여 설치 한 다음 새 명령을 엽니 다. 행 창 및

gem install ffi 

가 FFI 보석의 최신 버전을 다운로드하는 데 사용

당신을 위해 작동하지 않습니다 어떤 이유로, 당신은 항상의 약간 오래된 버전을 설치하려면 위의 원래 지침을 사용할 수 있는지 FFI 보석

+3

실제로 당신은 권리. 그것은 그 문제를 해결했습니다. 도와 줘서 고마워. – drake10k

+1

나에게도 일했습니다. 고마워요! – holaSenor

+1

대단히 감사합니다. 동일한 문제가 발견되어이 문제가 해결되어 문제가 해결되었습니다. –

관련 문제