HTTвечеринка на Родосе

Я использую Rhodes для разработки приложения для Android. Я установил гем HTTpary на Родосе. Теперь, когда я пишу заявление «требовать 'httparty'» в верхней части приложения, оно дает мне ошибку, например «Нет такого файла для загрузки». Что мне делать, чтобы решить эту проблему?


person Anand Soni    schedule 17.03.2011    source источник


Ответы (3)


В документации прокрутите вниз до раздела, начинающегося с "Добавление библиотек расширений Ruby в ваши Родосское приложение». В нем подробно описаны 3 способа включения внешних библиотек в ваше приложение, кратко изложенные ниже.

  1. Добавить расширение ruby ​​в отдельное приложение
  2. Добавить библиотеку ruby ​​в отдельное приложение
  3. Добавьте библиотеку ruby ​​в фреймворк Rhodes для создания всех приложений.

Базовая структура Rhodes содержит только те вещи, которые считаются достаточно общими для включения, поэтому размер пакета встроенного приложения может быть небольшим. Все, что не входит в базовую структуру, может быть включено в приложение с помощью вышеупомянутых методов.

person Geoffrey    schedule 23.05.2011

Это всего лишь предположение, так как в среде Rhodes; но если бы это был обычный ruby-скрипт, вам нужно было бы сначала иметь require 'rubygems' (при условии, что вы использовали rubygems...).

person eggie5    schedule 17.03.2011

Документация Motorola ужасна; позвольте мне помочь, если я могу. Во-первых, изучите константу $LOAD_PATHS из своего кода Ruby, чтобы увидеть полный список путей, которые ищет Rhodes. Любой .rb файл по этому пути автоматически становится доступным для require.

Затем вам нужно решить, добавлять ли эту библиотеку во всю инфраструктуру Rhodes или только в ваше приложение; лично я выбираю одно приложение за раз, потому что таким образом снижается вероятность несовместимости, и ваши приложения по-прежнему предоставляют все библиотеки в rhodes-*version/lib/framework

Если вы хотите добавить библиотеку в свое приложение, документация предлагает поместить ее в каталог app/lib, но имейте в виду, что поиск выполняется только по этому точному пути, поэтому, если у вас нет файла .rb с таким же именем поскольку ваш запрос требуется непосредственно по этому пути, он не будет обнаружен автоматически. Я упоминаю об этом, потому что общая структура представляет собой один файл с именем библиотеки, помещенным непосредственно в lib, и фактическим содержимым библиотеки внутри папки то же имя.

Пример: библиотека mime-types состоит из: lib/mime-types.rb и lib/mime/, которые называются по-разному и могут привести к точно такой же путанице при включении в Ruby.

person Steve Benner    schedule 23.09.2013