Jef*_*ost 2 java deployment swing
我有各种Java Swing应用程序,供多个用户使用.我的部署策略是在网络共享上找到.jar文件,用户创建该文件的快捷方式.当用户启动应用程序时,该文件将复制到其计算机并在本地执行.此方法允许单个代码副本并且易于更新.
问题是,如果当时有任何用户正在使用该应用程序,我无法更新网络共享上的文件.
我无法使用Web Start,因为我无法访问用于签署jar的证书.
我目前的解决方法是一个单独的应用程序,将所需的应用程序复制到用户的本地计算机,启动应用程序,然后启动器退出.从启动器应用程序退出并且用户的应用程序变为可见时,会有几秒钟的延迟.
任何人都可以建议一个更好的部署方法,我可以轻松更新应用程序的中央副本,其中Windows XP不会保持对文件的锁定?
更新:JSmooth方法解决了基本问题.JSmooth创建的.exe在使用时被锁定,但可以更新包含应用程序功能的.jar文件.
您可以使用Java Web Start,因为您可以使用自签名证书对文件进行签名.这将为您的用户提供他们可以一劳永逸地接受的警告.
因此,我建议您采用这种方式,因为这是实现您想要的唯一标准Java方式,并且它运行得相当好.使用最新的Java 6更新,您将获得许多新的有用功能.
一条建议:当您发布新版本时,将jar放在一个新位置,以便指向JNLP文件中的jar文件的URL发生变化!这是因为Java Web Start缓存了jar文件,这是我们发现确保缓存准确的最佳方法.
编辑:我相信你也可以使用JSmooth将Java文件包装在一个EXE文件中,该文件透明地提取本地计算机上的各种文件并在那里执行它们.这不应该锁定原始EXE文件.但是,我建议您使用Web Start方法.
| 归档时间: |
|
| 查看次数: |
595 次 |
| 最近记录: |