Использование библиотек Ruby и гемов с приложением Shoes - PullRequest
14 голосов
/ 04 февраля 2009

Я пишу небольшое приложение Shoes, для которого требуется библиотека, которую я написал с помощью обычной установки Ruby. Моя библиотека использует гем 'net-ssh' и кучу других библиотек Ruby.

Когда я запускаю свою библиотеку напрямую с обычным ruby ​​(у него есть собственный интерфейс командной строки), например:

ruby my_lib.rb

... все хорошо. Но когда я пытаюсь потребовать его в своем приложении Shoes, я получаю ошибку «нет такого файла для загрузки - net / ssh» (потому что my_lib использует net-ssh).

Я пытался возиться с переменной пути $: include в приложении Shoes, например:

$:.unshift "C:/ruby/lib/ruby/1.8"
$:.unshift "C:/ruby/lib/ruby/site_ruby/1.8"
require 'rubygems'
gem 'net-ssh'
require 'my_lib.rb'

... но безуспешно. Я получаю сообщение «Не удалось найти RubyGem net-ssh».

У кого-нибудь была такая же проблема? Какой лучший способ использовать ваши библиотеки Ruby и гемы в приложении Shoes?

Ответы [ 2 ]

18 голосов
/ 04 февраля 2009

Привет, _why опубликовал в своем блоге , hackety.org, об использовании драгоценных камней в Shoes. Надеюсь, это поможет!

Shoes.setup do
  gem 'json >= 1.1.1'
  gem 'activerecord'
end

require 'json'
require 'activerecord'

Shoes.app do
  @msg = para "ALL SYSTEMS GO"
  animate(20) { @msg.toggle }
end
2 голосов
/ 30 марта 2014

Для shoes4 метод Shoes.setup устарел. Вы можете установить нужные вам камни:

  1. gem install net-ssh
  2. Использование компоновщика и Gemfile

Тогда вам нужно всего лишь require 'net-ssh' в вашем приложении.

...