Как распространять приложение Ruby с необходимыми драгоценными камнями

Я разработал приложение Ruby (небольшую игру) и хотел бы "раздать" его другим людям.

Однако я не уверен, что делать с необходимыми драгоценными камнями. Если я просто отправлю свое приложение тому, у кого установлен ruby, но не нужные драгоценные камни, я предполагаю, что оно взорвется. Могу ли я упаковать драгоценные камни на месте? Если да, будет ли конфликт, если у другого человека будет другая версия драгоценного камня?

Итак, каков умный/правильный/хороший способ сделать это?


person phss    schedule 17.09.2009    source источник


Ответы (4)


Лучшим способом, вероятно, будет просто упаковать вашу игру как гем, тогда rubygems позаботится об установке зависимостей. Вот документация, объясняющая, как создавать собственные драгоценные камни.

person sepp2k    schedule 17.09.2009
comment
Вот как это сделать. Если вы никогда не делали этого раньше, вам может помочь ювелир[1]. Вы также можете указать зависимости вашего гема в манифесте вашего гема. [1] - github.com/technicalpickles/jeweler - person hgmnz; 18.09.2009
comment
И, кстати, вы можете создать задачу rake, которая может установить ваши гемы. См. ответ Иегуды здесь: stackoverflow.com/questions/1000749/ - person hgmnz; 18.09.2009
comment
Неплохо подмечено! Я не думал о том, чтобы сделать игру как Gem. - person phss; 20.09.2009

Если вы не хотите упаковывать свою игру как гем, вы можете исследовать Bundler, который будет интегрирован в Rails 3.

person Greg Campbell    schedule 18.09.2009

В вашем environment.rb вы можете выразить свои зависимости от драгоценных камней, например.

  config.gem "activemerchant", :lib => "active_merchant", :version => "1.4.1"

Это не так автоматически, как зависимости от гема, но, безусловно, его можно использовать. Пользователь должен sudo rake gems:install запустить ваше приложение.

person ndp    schedule 19.09.2009

Если вы ищете способ создания OSX .dmg и установщиков Windows, есть жемчужина под названием releasy, которая сделает все это за вас, и он специально разработан для выпуска приложений с графическим интерфейсом, написанных на Ruby. Он объединяет Ruby и все ваши зависимости от gem в один исполняемый файл, так что вашему конечному пользователю не нужно ничего устанавливать дополнительно.

Вам потребуется доступ к среде Windows/OSX для установки установщиков.

person Will    schedule 07.09.2013