Shared rss feeds:

Servare Mentem - blog

Мой предыдущий блог

пятница, 29 октября 2010 г.

RubyMine 3.0b, ruby1.9.2 и bundler 1.0.3

Поставил rubymine и столкнулся с проблемой при работе с 3 рельсами и установленным ruby 1.9.2. Рубимайн не хотел загружать список тасков и запускать генераторы, постоянно падал с uninitialized constant Object::Bundler, хотя из консоли всё запускалось прекрасно. Поиск в гугле ничего дельного не дал.
Я попробовал добавить в ~/.bashrc инициализацию переменных окружения GEM_PATH и GEM_HOME. Это тоже не помогло.
Тогда я попробовал прямо в начале Rakefile написать:
require 'rubygems'
gem 'bundler'
Тогда перезагрузка тасков начала падать с ошибкой Cannot find gem bundler. Я прописал в Rakefile вывод пути, откуда грузятся гемы. И с удивлением обнаружил, что Gem.path выдаёт неверные пути, а именно, он пытался загрузить гемы из /usr/lib/ruby/gems/1.9.2, тогда как гемы для ruby1.9.2 у меня установлены в /var/lib/ruby/gems/1.9.2. Я начал смотреть код метода path и вскоре попробовал вывести на консоль из Rakefile помимо Gem.path ещё и Gem.configuration.path. Каково было моё удивление, когда после добавления этой строчки, всё заработало как надо! До конца я с проблемой разобраться не успел - спать очень хотелось, но решение в данной ситуации стало очевидно. Добавление следующих строк в Rakefile и config/boot.rb спасло ситуацию:
require 'rubygems'
Gem.path
Gem.configuration.path
gem 'bundler'

Комментарии: 0:

Отправить комментарий

Подпишитесь на каналы Комментарии к сообщению [Atom]

<< Главная страница

-->