如何在bundler上下文中运行ruby脚本?

Mic*_*are 54 ruby bundle

我有一个名为foo.rb的Ruby脚本,我想在bundler环境的上下文中运行它.怎么样?

bundle exec foo.rb 不起作用,因为exec需要一个shell脚本.

Dav*_*ton 90

将脚本名称传递给ruby命令:

bundle exec ruby script_name
Run Code Online (Sandbox Code Playgroud)

如果您还想要Rails环境:

bundle exec rails runner script_name
Run Code Online (Sandbox Code Playgroud)

  • @MichieldeMare这就像为什么一切都在你看的最后一个地方 - 因为你停止寻找;) (4认同)
  • 哇,回想起来这很明显. (2认同)

Dor*_*ian 5

例如,我想使用与 Rails 应用程序相同版本的 Rubocop,而不是最新的系统版本,因此在脚本中执行此操作:

require 'bundler'
Bundler.require

# ...
Run Code Online (Sandbox Code Playgroud)

允许我使用我的应用程序版本的 rubocop。