2010-05-24 2 views
2

Je développe une application dans JRuby on Rails. Pour une raison quelconque, lorsque je modifie les fichiers de vue, le serveur de développement JRuby Mongrel ne les recharge pas. La chose embarrassante est que, après avoir édité les fichiers du contrôleur, le serveur les rechargera très bien lors de la prochaine requête. Ce serait ennuyeux même en utilisant MRI Ruby, mais le démarrage de JRuby Mongrel après chaque édition de vue est beaucoup plus lent, et beaucoup plus ennuyeux. (Notez qu'une fois démarré c'est assez rapide, le seul problème est le démarrage - la JVM doit se charger chaque fois que je lance JRuby Mongrel.)Comment activer le rechargement automatique des fichiers de vue en mode développement dans JRuby on Rails?

Je cours JRuby 1.5.0, Rails 2.3.5, et Java 6.

Répondre

3

J'ai trouvé que supprimer config.threadsafe! Dans config/environment.rb et le redémarrage du script/serveur permet le rechargement automatique des fichiers de vue.

Cela peut toujours être un bug dans JRuby, mais je ne suis pas sûr.

+0

Ce n'est pas un bug JRuby, c'est une fonctionnalité Rails. config.threadsafe! désactive le rechargement de classe. – dudleyf

+0

D'accord sur le rechargement de classe, mais qu'en est-il des fichiers de vue? Je crois qu'ils sont censés recharger, même avec 'config.threadsafe!'. – thekingoftruth

1

Cela me semble être un bug. Je vous encourage à en déposer un sur bugs.jruby.org ou à arrêter par #jruby sur freenode pour nous aider à comprendre ce qui ne va pas. JRuby ne devrait pas avoir un comportement différent de C Ruby pour quoi que ce soit Rails.

+0

J'ai trouvé que cela n'arrive que lorsque j'active config.threadsafe! dans environment.rb. Nick, est ce comportement attendu? – thekingoftruth

Questions connexes