Использование библиотек Ruby и драгоценных камней в приложении 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?


person Dema    schedule 04.02.2009    source источник


Ответы (2)


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

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
person baxter    schedule 04.02.2009
comment
baxter, я нашел несколько уродливое решение, которое заключалось в том, чтобы просто скопировать файлы гемов net-ssh в каталог гемов Shoes, что и должно было делать в Shoes.setup, так что, думаю, я был не так уж далек от правды! Спасибо! ;-) - person Dema; 04.02.2009

Для shoes4 метод Shoes.setup устарел. Вы можете установить нужные драгоценные камни одним из следующих способов:

  1. gem install net-ssh
  2. Использование бандлера и Gemfile

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

person bonh    schedule 30.03.2014
comment
У меня такая же проблема. Все мои локальные среды были основаны на rvm, но некоторые драгоценные камни (pdf-reader) не были найдены при запуске в режиме запуска или в упаковке. Мне пришлось упаковать свое приложение. Затем скопируйте драгоценные камни непосредственно в каталог lib / gems, который является частью содержимого приложений Mac OS X (не уверен, что то же самое в Windows). Затем заархивируйте этот контент для распространения. Работал нормально. Я уверен, что вы могли бы написать сценарий для этого упаковщика. Наши изменения в настоящее время нечастые. Mac OS X 10.10. Обувь federales - person Ben; 04.11.2015