問題を説明しましょう:
環境
更新したいこのアプリケーションがあります。私も作成したアップデーターjarを呼び出します。アップデーターは古いバージョンを実行しているアプリケーションを強制終了し、アップデーターは新しいバージョンで新しいアプリケーションを起動します。
問題
自分でjarを実行しない限り、新しいバージョンは起動しません。睡眠を追加しても問題は解決しませんでした。
仮説
アップデータ アプリを実行しているユーザーが Java であり、新しいバージョンを実行する権限がない可能性があります。
このJavaアプリケーションが「Javaユーザー」でjarを実行するよりも、最初のJavaをユーザーで実行すると、Javaユーザーは新しいバージョンを実行できません。
ランタイムで jar を実行するときにユーザーを指定する方法はありますか。
Runtime.getRuntime().exec("C://Temp//myapp.jar");