Почему Bundler.require загружает неправильный путь? - PullRequest
1 голос
/ 22 ноября 2010

У меня проблема с Бандлером и Синатрой.Сначала я использовал это в своем app.rb:

require 'rubygems'
require 'bundler/setup'
require 'sinatra'
require 'haml'
require 'redis'
...

Однако я прочитал о Bundler.require и подумал, что это хороший СУХОЙ способ, потому что гемы, указанные в Gemfile, - это те, которые мне потребуются * 1006.* в любом случае в моем приложении.Почему я должен снова указать требуемый в app.rb?Поэтому я изменил свой код на:

require 'rubygems'
require 'bundler'
Bundler.require(:default)

Гораздо лучше, а?Пока проблема не наступит:

Errno::ENOENT at /
No such file or directory - /home/lamnk/.rvm/gems/ruby-1.9.2-head/gems/bundler-1.0.7/lib/bundler/views/index.haml
file: tilt.rb location: read line: 119

Очевидно, что bundler переместил корневой путь приложения в свой собственный.Но почему это так?

1 Ответ

3 голосов
/ 22 ноября 2010

Старый ответ:

Взгляните на "Использование упаковщика rubygems для вашего приложения" в блоге Engine Yard.

Новый ответ:

Как указал Ламнк, этот пост на Моторном дворе старый;поэтому я сделал простое приложение https://github.com/sinetris/sinatra-example-bundler

...