Ruby Gem против пути к сайту - LoadError

Когда я пытался выполнить свой рубиновый файл в OSX, я застрял в этой ошибке:

in require: cannot load such file -- httparty (LoadError)

Однако когда я попробовал в irb

require 'httparty'
# => true

это вернулось правдой. При дальнейшем исследовании я вижу, что среда gem указывает на /Library/Ruby/Gems/2.0.0/ .., а также на sudo gem install httparty установки по этому пути. Однако из командной строки, когда я это делаю: ruby -e 'puts $LOAD_PATH' он показывает / Library / Ruby / Site / .. как путь, а папка Gems не включается.

Я использую OSX Mavericks.

Может ли кто-нибудь сообщить мне, почему эта разница в поведении между путями irb и gem environment.


person Joe    schedule 21.01.2014    source источник
comment
вы использовали связку?   -  person Малъ Скрылевъ    schedule 21.01.2014
comment
Поскольку я новичок в разработке Ruby, я не уверен, что именно вы имеете в виду, говоря об использовании пакета. Я попробовал связать после добавления драгоценных камней, которые мне нужны в моем Gemfile, и он сказал, что он успешно создан. И когда я исследовал, он установил драгоценные камни в папку Ruby / Gems. Проблема заключается в пути, на который ссылается $ LOAD_PATH. $ LOAD_PATH между irb и ruby ​​командной строки разные   -  person Joe    schedule 21.01.2014
comment
С помощью Bundler, если вы используете опцию командной строки --path, вы можете указать каталог, в который вы хотите установить драгоценные камни. Например: bundle install --path = vendor установит драгоценные камни в каталог с именем vendor в том же каталоге, где вы запускаете эту команду. Это сохранит зависимости проектов от гемов независимо друг от друга. Когда вы используете сборщик, вы должны использовать команды сборщика: Bundler.require, чтобы убедиться, что драгоценные камни, установленные в vendor, загружены правильно. Если вы хотите развиваться с помощью Ruby, я бы посоветовал потратить некоторое время на изучение Bundler.   -  person andHapp    schedule 21.01.2014
comment
Спасибо за комментарии .. Я сделаю это .. Меня только заинтриговало, почему LOAD_PATH различались между irb и ruby ​​командной строки.   -  person Joe    schedule 21.01.2014
comment
Исправление для запуска пакета exec. Получил это из этой ошибки stackoverflow.com/questions/18186800/   -  person Joe    schedule 21.01.2014