Quand une modification est-elle prise en compte
- CSS : fichiers statiques servis par tomcat. voir astuces war, auto-déploiement
- html : templates thymeleaf mis en cache à la première utilisation. voir astuces thymeleaf, war, auto-déploiement
- etc/cas/config/log4j2.xml : monitoré par CAS, pris en compte dynamiquement
- etc/cas/services/*.json : monitoré par CAS, modifications/ajouts/suppressions pris en compte dynamiquement
- java : build & restart ou parfois hotswap
- etc/cas/config/cas.properties : build & restart
- pom.xml : build & restart. Un "clean" peut-être nécessaire en cas de chgt de versions de jar
Comment accélérer les tests suite à des modifications de l'overlay CAS.
War avec Embedded tomcat
Difficile de faire prendre en compte les modifs quand on utilise le war avec embedded tomcat.
au lieu de
java -jar xxx/target/cas.war
utiliser
java -cp "xxx/target/cas:xxx/target/cas/classes:xxx/target/cas/WEB-INF/lib/*" org.springframework.boot.loader.WarLauncher
NB : avec maven le répertoire target/cas
est créé en plus du war.
Désactiver le cache thymeleaf
cas.properties
spring.thymeleaf.cache=false
(cf https://apereo.github.io/2018/06/10/cas-userinterface-customizations/ )
Auto-déploiement des modifications dès la sauvegarde des fichiers
Voir la page générique expliquant cette problématique du développement Java