我最近发布了一款跨平台的Java应用程序。为了进行分发,我们为Windows创建了一个NSIS安装程序,为Mac使用了DMG(其中包含JarBundled .app文件)。我们还计划创建Linux RPM、DEB和tarballs。
总体而言,这是5种不同的分发方法需要维护。
我的问题是:对于运行在许多平台上的Java程序来说,什么是最好的跨平台修补程序的方法?
我最近发布了一款跨平台的Java应用程序。为了进行分发,我们为Windows创建了一个NSIS安装程序,为Mac使用了DMG(其中包含JarBundled .app文件)。我们还计划创建Linux RPM、DEB和tarballs。
总体而言,这是5种不同的分发方法需要维护。
我的问题是:对于运行在许多平台上的Java程序来说,什么是最好的跨平台修补程序的方法?
我认为使用Ant脚本是一种比较跨平台的方法来执行任务。如果你的补丁逻辑包括移动文件、更新jar包、处理配置等,那么Ant可能适合你。你可以使用AntInstaller作为GUI界面。
也许这对你来说不是一个选择,但我认为最好的方法是使用Java Web Start。
它提供了跨平台的机制,可以自动下载软件的修补版本。
您是否考虑过仅发布整个应用程序的新小版本,而不是补丁?由于您已经投入了时间来为各个平台创建安装程序,因此似乎避免了为每个平台想出第二种方法所带来的很多麻烦。除非您的应用程序非常大,否则我想不到任何缺点,因为如今带宽相当便宜。