如何解决“/usr/bin/env: ruby_executable_hooks: No such file or directory”?
Posted
技术标签:
【中文标题】如何解决“/usr/bin/env: ruby_executable_hooks: No such file or directory”?【英文标题】:How to solve "/usr/bin/env: ruby_executable_hooks: No such file or directory"? 【发布时间】:2014-12-02 14:00:30 【问题描述】:我只是在 vps 中部署 jekyll,并在其上配置 git post-receive hook。当我从笔记本电脑将博客更新推送到 vps 时,我遇到了这个错误:
remote: /usr/bin/env: ruby_executable_hooks: No such file or directory
我搜索了一会儿,尝试了这篇帖子中提出的方法:bundle update: env: ruby_executable_hooks: No such file or directory,即执行以下命令:
rvm @global do gem regenerate_binstubs
gem regenerate_binstubs
但这无济于事,错误仍然存在。由于我不熟悉 rvm 或 ruby,谁能给我一个提示?
【问题讨论】:
在指向 Atom 以使用正确的 Rubocop 可执行文件时遇到了同样的问题。***解决方案实际上有所帮助。顺便说一句,您可能会接受您使用的那个:) 【参考方案1】:使用包装器,例如:
$ which jekyll
# /path/to/rvm/gems/ruby-version/bin/jekyll
在返回的路径中,将bin
替换为wrappers
,这样你就可以得到:
/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
。 Wrappers 而不是 bin!谢谢。
它有效!我正在尝试使用备份 gem 来安排备份。
它在 mac 或 linux 上的工作方式相同,wrappers
的路径包括环境,bin
的路径 - 不 - 所以它不会知道其余的 gems
总是存在同样的问题 - 在没有适当环境的情况下加载二进制文件 - 不同之处在于,感谢ruby_executable_hooks
,您现在可以及早发现它
与systemd
完美搭配。谢谢。【参考方案2】:
您需要通过在Terminal
中运行以下命令来将executable-hooks
刷新到最新版本:
sudo gem install --user-install executable-hooks
【讨论】:
【参考方案3】:我有同样的问题,但我有bundler
,而不是rubygems-bundler
,而且我的gem
无法识别regenerate_binstubs
。
rvm all-gemsets do gem update bundler
安装了 bundler 1.7.11 并为我修复了它。
【讨论】:
【参考方案4】:更新红宝石对我有用
gem install rubygems-update
update_rubygems
【讨论】:
【参考方案5】:faslane env: ruby_executable_hooks: 没有这样的文件或目录 重新安装 faslane
sudo gem install fastlane -NV
【讨论】:
以上是关于如何解决“/usr/bin/env: ruby_executable_hooks: No such file or directory”?的主要内容,如果未能解决你的问题,请参考以下文章
#!/usr/bin/env ruby 在 cron 中找不到
/usr/bin/env ruby 没有这样的文件或目录:使用 capistrano 3、capistrano/rbenv、capistrano/bundler 和 capistrano/rail