18

Я разрабатываю приложение с использованием Ruby on Rails, в основном в качестве предлога для изучения языка.Опции для распространения автономного приложения Ruby on Rails

Это не должно быть веб-приложение - и, возможно, я выбрал неправильный язык, но ...

Мое понимание, что для того, чтобы запустить экземпляр этого приложения на кого-либо еще компьютер, им нужно будет установить рубины на рельсах и, возможно, веб-сервер (или webrick), а также мой код приложения.

Мне просто интересно, есть ли какие-либо другие варианты распространения моего приложения в качестве автономного приложения или, возможно, просто простой способ упаковать веб-браузер и ROR вместе с моим приложением для простой одноэтапной установки?

ответ

7

Мне лично никогда не нужно было это делать. Но я столкнулся с этим уроком http://www.erikveen.dds.nl/distributingrubyapplications/rails.html, который, я думаю, будет полезен. В учебнике рассказывается, как фактически преобразовать приложение rails в автономный exe-файл.

+0

Это похоже на то, что мне нужно, с потенциально 2 недостатками: 1) Непонятно, действительно ли щелчок на результирующем исполняемом файле запускает веб-сервер, а если нет, то что он делает 2) Это не похоже на вас может упаковать приложение для кросс-платформенного. Это так? – Brent 2008-09-11 23:48:14

1

Вы можете включить Ruby on Rails, заморозив его до версии Rails, которую вы хотите использовать в своем проекте. Они называют это замораживанием. Пользователю не нужно будет устанавливать Rails для использования вашего приложения. Вы можете сделать это с помощью любой библиотеки, которую вы используете в своем проекте. Если проект использует библиотеку, просто поместите ее в папку «Поставщик» в вашем проекте. Затем используйте инструмент, аналогичный тому, что ответил @Josh, чтобы его упаковать.

Для запуска проекта вам понадобится веб-сервер. Об этом нет. Ruby on Rails похожа на ASP.NET в этом отношении, так как это серверная структура. Сервер запускает код и выводит HTML в браузер, используя фреймворк Rails.

К сожалению, возможно, вы выбрали неправильную структуру, чтобы делать то, что хотите. Вместо Ruby on Rails вы можете проверить Shoes, что является основой для разработки приложений с графическим интерфейсом с использованием Ruby.

3

Примечание: Рогатка представляется мертвым проектом (см. Комментарии). Я оставлю этот ответ здесь для исторических целей и непредвиденный возврат, который он вернется

Joyent's Slingshot может быть хорошей ставкой.

Joyent Slingshot позволяет разработчикам развертывать приложения Rails, такие как стандартное настольное приложение, работающее в режиме онлайн и офлайн (с синхронизацией), перетаскивание и взаимодействие со всеми другими настольными приложениями.

С Joyent Slingshot:

  • Создание гибридного приложения Web/настольное
  • Синхронизировать онлайн и оффлайн данных
  • Используйте тот же код для онлайн и оффлайн-приложения (ы)
  • Deploy и обновления ваша заявка легко
  • Перетаскивание в и из приложения

Вот некоторые дополнительные ссылки, чтобы помочь с вашей оценкой и/или помочь вам начать работу:

+1

Это все еще доступно? Я не могу найти его нигде. Ссылки - все тупики. – stellard 2010-01-28 08:58:26

1

Вы всегда можете рассмотреть компиляция вашего байт-кода Ruby в JVM (через JRuby) или байт-код .NET (через IronRuby) для распространения среди людей, у которых есть эти виртуальные машины, и не хотят устанавливать Ruby runtime.

Возможно, вы захотите проверить Shoes для создания настольных приложений в Ruby. Рельсы действительно настроены для создания веб-сайтов.

0

Вы конкретно не говорите, должно ли оно быть графическим приложением или нет. По другим ответам, я бы догадался.

Таким образом, вам необходимо выяснить, каковы ваши цели. RoR - это специализированная платформа для веб-приложений. Если ваша цель - изучить RoR, я бы сказал, чтобы получить некий недорогой веб-хостинг и сделать себе приложение. Если ваша цель - изучить Ruby, не обязательно Rails, тогда могут быть хорошие варианты для просмотра, Shoes, IronRuby, JRuby, MacRuby и других.

2

Способ, которым большинство людей отправляют рубиновые программы, включая Rails webapps, в качестве автономного exe через rubyscript2exe. Они описывают, как упаковать приложение Rails по адресу http://www.erikveen.dds.nl/distributingrubyapplications/rails.html. Ruby, Rails и все связанные библиотеки будут включены в EXE-файл.

Как уже упоминалось, Ruby не обязательно Rails, и если вы действительно хотите простой способ написать распространяемое приложение GUI в Ruby, то Shoes - отличное место для начала поиска.