- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我觉得调用 bundle exec rake
或 bundle exec make
很奇怪:为什么不呢
bundle exec bundle exec rake
然后呢?
虽然我应该能够从 Rakefile(或 Makefile)中要求和使用 Bundler。但是,我找不到如何使用正确的 gem 组运行测试,以下方法不起作用:
# Rakefile
require 'rake/testtask'
Rake::TestTask.new do |t|
require 'bundler'
Bundler.setup(:default, :test) # this has no effect
t.test_files = FileList['test.rb']
end
有人可以帮我正确设置 Rake 测试任务,或者解释一下使用 bundle exec rake
的哲学原因吗?
请注意,bundle exec rake
需要将 gem rake
添加到 Gemfile。
最佳答案
bundle exec
的全部目的是在项目的 Gemfile
上下文中运行以下内容。
如果没有它,对 rake
的调用可能会使用系统范围内安装的 rake 和/或 gem。这不允许对每个项目中使用的每个 gem 的版本进行细粒度控制。当您开发(或在生产环境中服务)使用相同 gem 的不同版本的多个 ruby 项目时,这变得尤为重要。
Bundler 允许您的项目自包含,无需对系统可用依赖项进行任何假设。
话虽如此,您可以创建一个 shell 别名,在您想要的前缀前加上 bundle exec
。例如,我的 zsh 配置(启用了 bundle 插件)为我提供了 bundle exec
的 be
简写。
关于ruby - `bundle exec rake` 还是 `rake`? `Rake::TestTask` 呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23486763/
我的项目测试分为多个文件 - test/test_1.rb 和 test/test_2.rb。 运行“rake test”给出: $ rake test ruby -I"lib:test" -I"/f
如何声明任务依赖于 TestTask ? 在此示例中,“clean_database”任务应在集成任务之前运行 Rake::TestTask.new(:integration) do |t| t.l
我正在使用 Rake 运行 Minitest,并希望有两个单独的 Rake 任务。 我添加了以下内容: require 'rake/testtask' task :default => [:test]
我正在为一个项目设置一个 rakefile,并且我已经定义了一些 rake TestTasks。我运行了一个简单的健全性测试,该测试执行 assert_equal(1, 2) 只是为了检查输出,除了通
我将此代码放入我的 Rakefile 中,以便能够从附加文件夹“test/classes”(不仅仅是来自 test/models、test/controllers 等)运行测试: # Adding t
我正在为我的一个项目使用 minitest,但我似乎无法让 Rake TestTask 实际运行这些文件。 require 'rake' require 'rake/testtask' task :m
我觉得调用 bundle exec rake 或 bundle exec make 很奇怪:为什么不呢 bundle exec bundle exec rake 然后呢? 虽然我应该能够从 Rakef
我是一名优秀的程序员,十分优秀!