Rails 3.2.6 reload_classes_only_on_change无法在Windows上运行

时间:2012-08-02 22:39:07

标签: jruby ruby-on-rails-3.2

我正在使用Windows开发模式的rails 3.2.6项目,我的同事正在使用Mac。我们都使用相同的配置。对于他来说,页面访问速度很快,但对我来说它需要一个年龄,因为它会在返回每个请求之前重新加载所有类,甚至是简单的图像GET请求。

在development.rb中我们有

config.cache_classes = false
config.reload_classes_only_on_change = true
config.consider_all_requests_local       = true
config.action_controller.perform_caching = false

如果我将其修改为以下内容,则在缓存类时速度很快,但是当我进行更改时,我必须重新启动才能使它们生效。

config.cache_classes = true
#config.reload_classes_only_on_change = true
config.consider_all_requests_local       = true
config.action_controller.perform_caching = false

我正在使用Rails 3.2.6,JRuby 1.7,Windows 7.有一个rails_dev_tweaks gem可用,但从rails 3.2开始这不是必需的。有没有人以前见过这个问题?我配置错误了吗?这个功能是否应该适用于Windows?

我在搜索中找不到任何对此问题的引用,并且我认为Rails 3.2.x在Windows上被大量使用,因此我认为这是一件非常简单的事情。感谢。

1 个答案:

答案 0 :(得分:0)

原因是列出Windows上文件夹中所有文件的延迟。它是在添加文件的情​​况下执行此操作,因此可以将其添加到缓存中。

在Mac和Unix上也是如此,除非它更快,所以不那么明显

在这里完整答案:

https://github.com/rails/rails/issues/7254