J'essaie d'utiliser le programme de mise à jour sans vérification de version pour arrêter le lanceur d'appels. J'ai inclus les éléments suivants dans mon code pour lancer l'Updater:Comment spécifier le répertoire du programme de mise à jour à partir d'une application Java?
ApplicationLauncher.launchApplication("368", null, false, null);
Je reçois une erreur quand il est l'exécution de cette ligne qu'il ne peut pas trouver le fichier i4jparams.conf
. Il est évidemment à la recherche du fichier dans le même répertoire que le lanceur, mais le fichier se trouve dans le sous-répertoire .install4j (par défaut). L'application de mise à jour est également dans ce répertoire.
Il travaillait quand j'ai appelé directement Updater:
Process process = new ProcessBuilder(".\\.install4j\\updater.exe").start();
Malheureusement, cette approche ne permet pas la mise à jour de fermer le lanceur appeler quand il est occupé l'installation d'une nouvelle application.
Je dois évidemment dire ApplicationLauncher.launchApplication
pour rechercher le programme de mise à jour dans le répertoire .launch4j
, mais je ne sais pas comment faire cela.
Merci, votre réponse m'a indiqué dans la bonne direction. J'ai dû exclure le fichier install4j-runtime-6.1.5.jar du répertoire de la bibliothèque Maven exporté. J'ai changé la définition de l'arborescence de distribution de fichiers dans Install4j pour exclure ce fichier JAR spécifique. Après ce changement, ça fonctionne bien maintenant. – Keplerian