在纯ruby脚本中使用gem(不是Rails)

アレッ*_*ックス 12 ruby require bundler

一个ruby文件:

gem "my-gem", git: "https://github.com/gem123.git", branch: "some-branch"
require "my-gem"

var1 = SomeGem::some_method123
puts var1
Run Code Online (Sandbox Code Playgroud)

它说Could not find 'my-gem' (>= 0) among 330 total gem(s) (Gem::LoadError).为什么不?我需要一个gem的特殊分支,不想克隆存储库.

inf*_*sed 29

使用bundler.创建Gemfileruby脚本的旁边.

Gemfile,添加:

gem "my-gem", git: "https://github.com/gem123.git", branch: "some-branch"
Run Code Online (Sandbox Code Playgroud)

确保安装了bundler:

gem install bundler
Run Code Online (Sandbox Code Playgroud)

并安装所需的宝石:

bundle install
Run Code Online (Sandbox Code Playgroud)

现在只需在脚本顶部初始化bundler:

require 'rubygems'
require 'bundler/setup'

# require your gems as usual
require 'my-gem'
Run Code Online (Sandbox Code Playgroud)