Это способ распространения составных сценариев Ruby, таких как PHAR в PHP / JAR в Java / EGG в Python? - PullRequest
0 голосов
/ 28 апреля 2011

В моей работе часто приходится распространять сценарии среди других отделов компании, подрядчиков и т. Д. Если сценарий представляет собой один файл .rb / .php / .jar / .py, то это легко: все, что мне нужно, это каким-то образом предоставить его подать на человека, и он просто дважды щелкнет его, чтобы выполнить. Но если скрипт сложный (большой), запись его в виде одного файла не очень хороша с точки зрения программиста - поэтому сложные скрипты создаются в виде ряда файлов с чем-то вроде «основного» файла, который запускает скрипт. И где проблема с распространением таких сценариев для непрограммистов: им нужно скопировать всю папку, содержащую все файлы, найти основной файл и дважды щелкнуть по нему. Для непрограммистов это намного сложнее, чем просто дважды щелкнуть один файл :(. Действительно.

PHP, Java и Python предлагают решение для таких проблем распространения. Я могу просто упаковать все файлы в файл ".phar", ".jar" или ".egg" и передать этот файл конечным пользователям - двойной щелчок по нему запустит скрипт (или введет его имя в консоли, если скрипт является командой- линия). Та же простота, что и с одним файлом сценария.

Существует ли что-то подобное для Ruby? Я проверил механику 'gem', которая кажется мне очень распространенной для python 'egg', но кажется, что 'gems' не подходят для выполнения в качестве 'сценария', они предназначены только для установки: (.

Есть намеки или идеи?

1 Ответ

2 голосов
/ 28 апреля 2011

Вы можете использовать JRuby в сочетании с Rawr:

http://rawr.rubyforge.org/

Чтобы процитировать документы: " С Rawr, простой, предварительно сгенерированный файл конфигурации превращает ваш кодв исполняемый jar, .exe для Windows и .app для OS X."

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