如何查看或检查捆绑执行的$ PATH?

时间:2012-02-09 11:08:12

标签: ruby bundler

我正在对某个gem(spree_cmd)进行故障排除,并想知道“bundle exec”期望二进制文件的位置。

...bundler/shared_helpers.rb:151:in `bin_path': can't find executable spree.

当我echo $PATH时,某处有一个“狂欢”。已确认which spree

1 个答案:

答案 0 :(得分:1)

如果没有更清楚地了解您的问题,我无法提供任何具体内容。

你可以通过bundle exec which some_binary_from_gemfile找出存储二进制文件的位置,它会告诉你二进制文件的位置。

根据docs,您似乎可以通过设置$BUNDLE_BIN_PATH环境变量来添加自己的bin目录。

您可以做的另一件事是bundle install --binstubs,它会在根目录中创建一个包含所有二进制文件的文件夹。

如果您的二进制文件未添加到路径中,我首先看到的是.gemspec,(您必须specify where the bin directory isspec.bindir = 'bin')。我在当前的spree_cmd gem(0.0.4)中看到它看起来是正确的(还没试过运行它)。如果看起来正确,那么确保你的二进制文件在你指定的目录中,确保它是可执行的,确保shebang是正确的,确保它的名称与你试图调用的二进制文件的名称相同。