rautomation - в RubyMine с jRuby - получение ошибки - PullRequest
0 голосов
/ 26 октября 2011

Я искал для автоматизации приложений Windows, и меня попросили изучить с rautomation, который я только начал использовать.

Теперь, после прочтения документации по github и нескольким блогам Ярмо, я публикую здесь очень простую проблему и уверен, что неправильно делаю что-то очень простое.

Вот мой код -

>> require "rubygems"
=> true
>> require "rautomation"
=> true
>> @window = RAutomation::Window.new :title => "System Volume (C:)"
RuntimeError: unsupported platform for RAutomation: java
    from C:/jruby-1.5.6/lib/ruby/gems/1.8/gems/rautomation-0.6.3/lib/rautomation/adapter/helper.rb:16:in `default_adapter'
    from C:/jruby-1.5.6/lib/ruby/gems/1.8/gems/rautomation-0.6.3/lib/rautomation/window.rb:65:in `initialize'
    from (irb):10:in `new'
    from (irb):10

Итак, вопрос в том, что я делаю не так? Здесь я пытаюсь получить доступ к проводнику Windows.

Готово - Готово. Проблема с использованием Jruby. Если я использую (обычный) ruby ​​с rubymine, то у меня не возникает никаких проблем. Stackoverflow не позволит мне закрыть вопрос, пока у меня не будет 100 репутации.

1 Ответ

2 голосов
/ 28 октября 2011

Это происходит потому, что RAutomation определял совместимость с RUBY_PLATFORM . Следующая версия будет использовать переменную среды ОС вместо: https://github.com/jarmo/RAutomation/commit/dd825b04aab6d90cfedf385a620095c17da92644

Но вы также можете использовать его с JRuby (хотя он и не проверен, но он должен работать) прямо сейчас, указав сам адаптер, чтобы метод #default_adapter не выполнялся. Вы можете сделать это двумя способами:

1) Укажите адаптер для метода Window.new:

RAutomation::Window.new(:title => //, :adapter => :win_ffi)

2) Укажите адаптер в переменной среды:

set RAUTOMATION_ADAPTER=win_ffi
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...