如何解决“ / usr / bin / env:ruby_executable_hooks:没有这样的文件或目录”?


71

我只是将jekyll部署在vps中,并在其上配置git post-receive钩子。当我从笔记本电脑将博客更新推送到vps时,遇到了以下错误:

remote: /usr/bin/env: ruby_executable_hooks: No such file or directory

我搜索了一会儿,并尝试了本文中提出的方法:软件包更新:env:ruby_executable_hooks:没有这样的文件或目录,即执行以下命令:

rvm @global do gem regenerate_binstubs
gem regenerate_binstubs

但这没有帮助,错误仍然存​​在。由于我不熟悉rvm或ruby,有人可以给我提示吗?


指向Atom使用正确的Rubocop可执行文件时,遇到了同样的问题。最佳解决方案实际上有所帮助。顺便说一句,您可能会接受您使用的那个:)
D端

Answers:


170

使用包装器,例如:

$ which jekyll
# /path/to/rvm/gems/ruby-version/bin/jekyll

在返回的路径中替换binwrappers,您将得到:

/path/to/rvm/gems/ruby-version/wrappers/jekyll

这是一个脚本,可以加载适当的环境并解决您的问题,RVM会自动生成包装器。


我必须同意Dex。试图使MailCatcher与Vagrant / PHP / Drupal很好地配合使用,这是关键。sendmail_path = /usr/bin/env /home/vagrant/.rvm/gems/ruby-1.9.3-p551/wrappers/catchmail。包装而不是垃圾桶!谢谢。
Pebbl

有用!我试图使用备份gem安排备份。
IgnazioC 2015年

3
它在Mac或Linux上的工作原理相同,wrappers包含环境的路径,包含环境的路径bin-不-因此,它将不了解其余的宝石
mpapis 2015年

1
始终存在相同的问题-在没有适当的环境的情况下加载二进制文件-区别在于,现在您可以早日找到有关它的信息ruby_executable_hooks
mpapis 2015年

3
与完美搭配systemd。谢谢。
monteirobrena

27

您需要executable-hooks通过在中运行以下命令来将刷新到最新版本Terminal

sudo gem install --user-install executable-hooks


4
有趣的是,这再次发生在我身上,然后我第二次找到了这个答案,它又解决了我的问题...大声笑
jcpennypincher

5

我遇到了同样的问题,但是我bundler没有rubygems-bundler,而且我gem不认识regenerate_binstubs

rvm all-gemsets do gem update bundler 安装了捆绑器1.7.11并为我修复了它。


3

更新红宝石对我有用

gem install rubygems-update
update_rubygems

0

faslane env:ruby_executable_hooks:没有这样的文件或目录
重新安装faslane

sudo gem install fastlane -NV
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.