Gem whenever 使用时出现 sh: bundle: command not found 错误

Fighting_3 · 2017年08月29日 · 最后由 Fighting_3 回复于 2017年09月22日 · 3711 次阅读

我按照 git 上的说明安装了该 gem,手动执行某个任务可以执行成功,但是用 whenever 的定时任务时,log 日志里每个周期出现 sh: bundle: command not found 这个报错,不是很懂啥意思,求资深玩家指导指导,毕竟项目快交了,我还不知道咋办😂 😂 目前已经解决啦,谢谢几位大佬的帮助,最后我列出了我遇到的问题以及解决方案。

gem install bundler

你如果用 rvm 装的话 考虑这样用 /usr/bin/sudo -iu 你的用户 命令

hz_qiuyuanxin 回复

我也觉得可能是这个原因,正在尝试,我装了 2 个版本的 rails 和 ruby,rubymine 打开项目命令是可用的,但是在项目里用绝对路径切换下目录,虽然还是到项目本身的目录,但是命令就不可用了

搞定了,原来就是版本的问题,我把 ruby2.4.1 干掉就 ok 了😂 ,另外默认写入的定时动作是 production 模式的,我想在 development 环境下测试,怎么弄呢?现在我是直接在任务列表里手动把-e production 删掉来做的。。

目前已经把这个问题解决了,在这里分享下我遇到的问题以及解决的方案。 1.按照官方文档装上 whenever 后,在 schedule.rb 文件里加入这些代码

set :output, 'path'
set :environment, :development

第一句是指定任务列表的输出地址(log),可以查看;第二句是指定运行环境,不写的话默认在开发环境运行。 2.我遇到的这个问题,总是报错 sh: bundle: command not found(在日志里看到的输出),因为我安装了好几个版本的 ruby,默认版本不是该项目的版本,所以会报错,解决方案是用.ruby-version 文件来控制项目的 ruby 版本 (具体怎么操作搜索引擎应该能搜到)

Fighting_3 关闭了讨论。 09月22日 15:39
需要 登录 后方可回复, 如果你还没有账号请 注册新账号