Grails 2.3.0 Rechargement automatique ne fonctionne pas

J’ai récemment amélioré notre projet en grails 2.3.0. Tout fonctionne bien, sauf que j’ai des problèmes de rechargement automatique qui ne fonctionnent pas lorsque je modifie notre code. Cela inclut tous les artefacts de projets – contrôleurs, domaines, services, gsps, fichiers CSS et javascript.

Mes anciennes versions de grails fonctionnent correctement et se rechargent et recomstacknt chaque fois que je change.

Je sais que cette question est populaire et j’ai cherché Jira, Nabble et ici pendant des jours maintenant, mais rien de ce que j’ai trouvé n’a été capable de résoudre mon problème (j’ai même essayé d’append des citations comme Peter suggéré dans http: / /jira.grails.org/browse/GRAILS-7936 et aussi ce fil de discussion Projet Grails Not Auto Reloading n’a pas aidé).

Suis-je en train de lancer des grails sur un Macbook Pro avec les parameters suivants:

  • version grails 2.3.0
  • Version Java “1.7.0_17” Environnement d’exécution Java (SE) (version 1.7.0_17-b02) Serveur virtuel Java HotSpot (64 bits) (version 23.7-b01, mode mixte)
  • En cours d’exécution à partir du terminal avec Textmate en tant qu’IDE

Toute aide serait grandement appréciée.

Il semble que dans Grails 2.3, le rechargement n’est plus le défaut

Dans Grails 2.3, l’agent de rechargement n’est plus sur le chemin du système de génération à moins que vous ne passiez l’indicateur -reloading à la commande grails:

grails -reloading run-app

Cependant, vous pouvez activer le forking dans votre buildConfig en utilisant la configuration suivante:

 forkConfig = [maxMemory: 1024, minMemory: 64, debug: false, maxPerm: 256] grails.project.fork = [ test: forkConfig, // configure settings for the test-app JVM run: forkConfig, // configure settings for the run-app JVM war: forkConfig, // configure settings for the run-war JVM console: forkConfig // configure settings for the Swing console JVM ] 

Plus d’informations: Exécution en fourche et agent de rechargement

J’utilise Grails 2.4.3 et IntelliJ 13 et j’ai trouvé que je devais avoir la partie -reloading à la fin de la commande run-app .

En d’autres termes, lorsque vous modifiez vos configurations Run / Debug, dans la partie “Ligne de commande”, placez run-app -reloading et NOT -reloading run-app .

J’ai trouvé cette solution ici de l’utilisateur longwa

Grails 2.4.x a maintenu le même support:

 grails -reloading run-app 

Les journaux afficheront l’état du rechargement une fois qu’un fichier “surveillé” change dans le système de fichiers:

 2014-09-23 00:42:02,666 [localhost-startStop-1] INFO conf.BootStrap - Checking for regissortinges in system env | Server running. Browse to http://localhost:8080/docker-registry-ui | Compiling 1 source files..... 

Je n’ai pas pu résoudre mon problème de rechargement par l’une des suggestions ci-dessus. Dans mon cas, le problème était mon chemin, il contenait un espace! Il m’a fallu deux jours et demi de barbe pour finalement comprendre. Mon chemin était quelque chose comme: ~/Box Sync/path/to/project . Cet espace unique dans Box Sync était le méchant caché. Je crois que c’est lié à ce billet https://github.com/grails/grails-core/issues/9344 .

Je n’ai pas besoin de courir avec -reloading dans la ligne de commande, son problème de springloaded.jar.

remplacer le dossier Springloaded dans grailsHome / lib / org.springframework / springloaded par le grails sdk 2.4.3

https://mega.co.nz/#F!INgVnboD!r7ssrFy9TiCQ50ROqxWt8g

J’ai testé dans grails 2.5.0 et 2.4. *