我有各种Java Swing应用程序,供多个用户使用.我的部署策略是在网络共享上找到.jar文件,用户创建该文件的快捷方式.当用户启动应用程序时,该文件将复制到其计算机并在本地执行.此方法允许单个代码副本并且易于更新.
问题是,如果当时有任何用户正在使用该应用程序,我无法更新网络共享上的文件.
我无法使用Web Start,因为我无法访问用于签署jar的证书.
我目前的解决方法是一个单独的应用程序,将所需的应用程序复制到用户的本地计算机,启动应用程序,然后启动器退出.从启动器应用程序退出并且用户的应用程序变为可见时,会有几秒钟的延迟.
任何人都可以建议一个更好的部署方法,我可以轻松更新应用程序的中央副本,其中Windows XP不会保持对文件的锁定?
更新:JSmooth方法解决了基本问题.JSmooth创建的.exe在使用时被锁定,但可以更新包含应用程序功能的.jar文件.