我有一个包装器目录,用于包装我的 Rails 应用程序:
wrapper
|____ Rakefile
|____ my_task.rake
|____ rails_app/
在 my_task.rake
中,我想为 rails_app
运行 bundle exec rubocop
(我已经为该应用程序安装了 Rubocop)`。
即使我已经在 rake 任务中成功地将目录更改为 rails_app
,系统命令 bundle exec rubocop
的结果是在 wrapper
中安装了 rubocop正在运行,而不是 rails_app
中的 rubocop 版本。
如何在 rake 任务中指定系统命令以在不同的目录中运行 rubocop?我知道我可以将 rake 任务放在 Rails 应用程序中,但我只想说这是一个实用的...
最佳答案
它不依赖于目录层次结构,但它依赖于安装在您当前使用的 ruby 版本上的 rubocop 版本。您使用的是 rvm 还是 rbenv?你在使用 Bash 吗?它不会关注您的 Gemfile。所以你需要确定你安装的是什么 rubocop 版本。
关于ruby-on-rails - 运行从另一个目录安装的 rubocop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49347366/