J'ai configuré exécuté avec mince via Lorsque j'ajoute un nouvel itinéraire, il le recharge correctement, il est donc accessible, mais cela ne rechargne rien d'autre. P> Par exemple, si je modifiais des itinéraires vers P> que Je cours sur Windows Vista X64, donc je ne peux pas utiliser fusil de chasse forte> à cause de rack :: recharge code> en fonction de cette thread
mince start -r config.ru code>, mais il ne recharge que des itinéraires nouvellement ajoutés. Lorsque je change déjà de la route existante, il exécute toujours l'ancien code. P>
/ code> servirait toujours
foo code>, même si a changé, mais
/ foo code> rechargerait et servirait correctement
baz code>. p>
fourchette () code>. p> p>
4 Réponses :
fait fusil de chasse ne fonctionne pas sous Windows?
du Readme: P> < pré> xxx pré>
Il s'agit d'une version de rechargement automatique de la commande rackup expédiée avec Étagère. Il peut être utilisé comme alternative à la logique de rechargement complexe fournie par des cadres Web ou dans des environnements qui ne prennent pas en charge le rechargement des applications. P>
La commande de fusil de chasse démarre l'un des serveurs prises en charge de rack (par exemple, MONDREL, MINIR, webrick) et écoute les demandes mais ne charge aucune partie de la réelle application. Chaque fois qu'une demande est reçue, il fourchette, charge l'application dans Le processus d'enfant, traite la demande et sort du processus d'enfant. Les Le résultat est propre, le rechargement à l'échelle de l'application de tous les fichiers source et modèles sur chaque demande. p> p>
Désolé, je n'ai pas vu votre note sur le fusil de chasse
Vous pouvez essayer Sinatra-reloader , connu pour bien fonctionner sur Windows (également, C'est plus rapide que le fusil de chasse). P>
Nous avons eu ce problème nous-mêmes, car deux de mon équipe utilisent Windows et deux sont sur Mac. C'est la solution que nous avons allée, semble bien fonctionner jusqu'à présent.
Non seulement plus rapide mais je trouve plus facile à utiliser Sinatra-Reloader :-)
Ceci fonctionne:
# config.ru require 'rubygems' require 'sinatra' require 'rack/reloader' require 'app' set :environment, :development use Rack::Reloader, 0 if development? run Sinatra::Application # app.rb Sinatra::Application.reset! get '/' do 'foo' end
Parfait! Pour une application modulaire, exécutez MyAppClassname (config.ru) et inclure le sinatra :: Application.Reset! dans la classe d'applications (app.rb).
Vous pouvez également essayer d'utiliser Trinidad un conteneur de rack Jruby basé sur Tomcat. D'après mon expérience, il modifie le rechargement par défaut sans avoir à modifier vos fichiers source. Sang sanglant aussi aussi. Évidemment, pas de bien si vous utilisez des bibliothèques natales, mais si vous déployez sous Windows, vous êtes probablement utilisé pour adopter une approche pure-rubis.
Sa syntaxe est aussi simple que la fine approche: P>
jruby -S trinidad -r config.ru