在没有 bundle exec 的 Ruby 脚本中需要来自 gem 的文件

Require files from gem in Ruby script without bundle exec

我有一个脚本需要在项目 Gemfile 中定义的 gem 个特定文件。

#!/usr/bin/env ruby
require 'some_gem/helpers/some_helper'

... rest of script

当我 运行 脚本时,出现无法加载 some_helper.rb 的错误。如果我 运行 和 bundle exec command... 那么一切正常。
我知道 bundle exec 将 Gems 暴露给 $LOAD_PATH 这让 require 工作。有没有办法将该功能移动到脚本中,以便用户不必键入 bundle exec?

在我需要 gem 个文件之前,我是否只需要将 require "bundler/setup" 添加到脚本中?

http://bundler.io/v1.12/#getting-started

:)

#!/usr/bin/env ruby
require 'rubygems' # because reasons.. most probably it is not needed unless you are using really old ruby where it is not loaded by default
                   # also at the moment rubygems and bundler are being merged :) 
require 'bundler/setup' # for things installed with bundler
require 'some_gem/helpers/some_helper'

您还可以检查例如http://mislav.net/2013/01/understanding-binstubs/