Comment exécuter un serveur DropWizard/Jersey localement sans avoir à redémarrer et reconditionner pour obtenir les mises à jour des fichiers d'actifs ?

StackOverflow https://stackoverflow.com//questions/21004704

Question

Je travaille côté client d'un projet qui utilise DropWizard.Malheureusement, ce que je vis, c'est que pour apporter une modification aux actifs, je dois arrêter le serveur, empaqueter les actifs avec maven, puis réexécuter le serveur, sinon les actifs ne seront pas mis à jour.

J'ai essayé d'ajouter dropwizard-configurable-assets-bundle mais je vois toujours le même comportement.Voici le service après l'avoir ajouté :

Service.java

public void initialize(strap<ServiceConfiguration> strap) {

    // Assets
    strap.addBundle(new ConfiguredAssetsBundle(
            "/dashboard/app/", "/dashboard/", "index.html"
    ));

    // Redirect /dashboard to /dashboard/
    strap.addBundle(new RedirectBundle(ImmutableMap.<String, String>builder()
            .put("/dashboard", "/dashboard/").build()));
}

je cours actuellement mvn package && java -jar target/pack.jar server config.yml.J'ai essayé d'utiliser Eclipse mais je devais le redémarrer manuellement et il n'était pas reconditionné pour moi, donc cela ralentissait encore plus les choses.

Tout ce processus est vraiment cela me ralentit et j'espère que c'est juste mon ignorance du monde qu'est Java.

Était-ce utile?

La solution

Si vos actifs sont regroupés sous src/main/resources alors ils devraient simplement se mettre à jour automatiquement avec Eclipse sans qu'un redémarrage soit nécessaire, tant que vous exécutez le service exécutable main() depuis l'EDI.

Vous devrez peut-être vérifier que votre plugin Maven est défini sur "générer des ressources" lors des modifications, mais ce n'est que le paramètre par défaut et devrait donc déjà être en place.

Ce que vous décrivez est tout à fait possible dans Eclipse. J'ai une expérience personnelle en matière de modifications de ressources (par ex.modifier et enregistrer un actif HTML), puis voir une mise à jour immédiate en ne faisant rien d'autre qu'une actualisation du navigateur.

Autres conseils

Dans mon Intellij Idea, j'utilise JRebel plug-in prévu à cet effet.JRebel prend également en charge Eclipse.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top