gpt4 book ai didi

ruby-on-rails - rake 和 bin/rake 的区别

转载 作者:行者123 更新时间:2023-12-04 03:38:21 25 4
gpt4 key购买 nike

有人可以解释以下命令之间的区别吗?

抽取 Assets :预编译

bin/rake Assets :预编译

RAILS_ENV=production rake assets:precompile

RAILS_ENV=production bin/rake assets:precompile

最佳答案

rakebin/rake 都是用于引导 Rake gem 的可执行 Ruby 文件。 rake 是您环境对 Rake gem 的默认调用,是在您安装 Rake 时由 RubyGems 创建的。它应该位于您的 PATH 中的某个位置:

[jkrause:~] $ which rake
/usr/bin/rake

或者,如果您使用的是版本管理器,例如 RVM(您应该使用):

[jkrause:~] $ which rake
/Users/jkrause/.rvm/rubies/ruby-2.2.0/bin/rake
另一方面,

bin/rake 是由 Rails 在您创建新的 Rails 应用程序时创建的,位于 Rails 根目录的 bin 目录中应用:

[jkrause:~] $ ls -la ~/src/my_rails_app/bin/rake
-rwxr-xr-x 1 jkrause staff 164 Jan 5 14:11 bin/rake

在旧版本的 Rails(3.x 及更早版本)中,bin/rake 不存在,因此标准做法是调用 RubyGems 安装的默认 rake .使用 Rails 4.x,您需要调用 bin/rake,因为 Rails 需要在调用 Rake 之前更改环境并加载一些辅助 gem。老实说,出于习惯,我仍然时不时地执行 rake,而且我从未见过任何问题,但开始使用 bin/rake 可能是个好主意因为 Rails 指南明确表明了这一点。

最后,RAILS_ENV 用于设置特定执行 rakebin/rake 的 Rails 环境(开发、测试或生产) > 应该使用。

关于ruby-on-rails - rake 和 bin/rake 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25668200/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com