Bonjour à toutes les pointures en Java ! Je demande votre aide pour la mise en place d'un système de mises à jour pour un client Java. Après quelques recherches je suis tombé sur le système Java Web Start, effectivement après suivi des tutoriels et des tests ça répondrait aux spécifications, le problème c'est que l'application n'a pas été conçue pour être déployée par JWS ni même par un JAR mais via un installeur setup.exe.
L'application peut s'exécuter sous la forme d'une archive JAR, mais le JAR n'est pas autonome. Il y a énormément de fichiers externes : des images pour la GUI, des fichiers de conf, de traduction... qui doivent être aussi mis à jour s'il y a changement. Or si j'ai bien lu les spécifications de JWS tout les éléments à déployer/mettre à jour doivent être sous la forme d'archives JAR.
Il est hors de question (et beaucoup trop long) de modifier l'application à la base, donc je recherche plusieurs solutions :
- Utiliser des méthodes DownloadService pour mettre à jour les ressources au démarrage de l'application (mais là je sèche)
- Avoir un setup qui déploie les fichiers locaux non nécessaires à mettre à jour, puis lance un JNLP qui installerait l'application (les classes), les libs ainsi que tous les fichiers sujets aux mises à jour automatiques (encore faut-il que j'arrive a mettre ça dans des JAR).
Je précise que le déploiement via JWS n'est pas obligatoire, uniquement la mise à jour, même si ça serait préférable d'avoir les deux.
Donc question : est-il possible de mettre "n'importe quoi" dans un JAR et de mettre à jour ce n'importe quoi via Java Web Start, de façon incrémentale ?
Si non, de quelles solutions dispose-je ?
Partager