问题描述
我正在使用捆绑程序从github来源安装gem,并尝试在Terminal中执行其可执行文件,对于该文件说Gem未找到异常。有什么方法可以自动加载捆绑程序文件夹下安装的gem,而不是将它们加到PATH变量中?
解决方法
如果您通过捆绑程序管理所有rubygems依赖项,请使用bundler exec
运行rubygems二进制文件。
例如,如果您使用捆绑器安装cowsay
,则Gemfile
看起来像
# frozen_string_literal: true
source "https://rubygems.org"
gem "cowsay"
然后使用捆绑程序安装依赖项,例如
$ bundle install
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies...
Using bundler 2.1.4
Fetching cowsay 0.3.0
Installing cowsay 0.3.0
Bundle complete! 1 Gemfile dependency,2 gems now installed.
Bundled gems are installed into `./gems`
现在您可以使用捆绑器执行cowsay
,例如
$ bundle exec cowsay stackoverflow.com
___________________
| stackoverflow.com |
-------------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||