Почему Bundler.require загружает неправильный путь?

StackOverflow https://stackoverflow.com/questions/4247458

  •  27-09-2019
  •  | 
  •  

Вопрос

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

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

Однако я читал о Bundler.require и подумал, что это хороший сухой способ, потому что в драгоценных камнях, указанных в драгоценных камнях потребует в моем приложении в любом случае. Почему я должен указать требуемые снова в 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 переместил корневой путь приложения к своему собственному. Но почему это?

Это было полезно?

Решение

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

Взгляни на «Использование Bundler Rubygems Bundler для вашего приложения» на блоге двигателя двора.

Новый ответ:

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top