Ruby 使'rake test'自动调用'bundle exec rake test'
MyRuby 使'rake test'自动调用'bundle exec rake test',ruby,bundler,Ruby,Bundler,MyRakefile需要与bundler一起安装的某些依赖项。因此,运行我的Rakefile的正确方法是使用bundle exec rake 然而,我相信有一天会有人意外地使用rake运行它。因此,我们在顶部添加了: abort('fatal: Please run this using `bundle exec rake`') unless ENV["BUNDLE_BIN_PATH"] 但是,如果脚本改为使用任何附加命令行参数将自身重新运行为bundle exec rake,则会更有帮助。我
Rakefile
需要与bundler一起安装的某些依赖项。因此,运行我的Rakefile
的正确方法是使用bundle exec rake
然而,我相信有一天会有人意外地使用rake
运行它。因此,我们在顶部添加了:
abort('fatal: Please run this using `bundle exec rake`') unless ENV["BUNDLE_BIN_PATH"]
但是,如果脚本改为使用任何附加命令行参数将自身重新运行为bundle exec rake
,则会更有帮助。我该怎么做?如果未安装捆绑机时,捆绑机正常故障,则可获得额外积分。使用:
bin/rake
代替rake
bundle exec
。无需在命令行上手动调用任何内容,即可完成所需的任何设置。您可以轻松地修改binstub文件,并且它是特定于项目的
最后,如果键入
bin/rake
实在太多,您可以使用更短的别名,例如brake
,或者如果您想生活在边缘,可以使用别名rake='bin/rake'
我认为@coreyward有答案,但是如果你陷入困境,你总是可以别名rake='bundle exec rake'
,但那可能会让你在以后的某一天陷入麻烦。这不是答案,但从来没有一个好的理由bundle exec
。研究使用RVM或rbenv和Gemset,你的生活会轻松得多。@JimStewart如果你喜欢逆流而上,Ruby可能不适合你。甚至你推荐的ruby管理者也不同意你的观点。@JimStewart感谢你分享这个有争议的想法。你能给我指出一个更好的起点来了解这一点吗?说得清楚一点,我有兴趣帮助其他管理我项目的人。因此,更改我的工作流的答案不会帮助希望运行此项目的人。