编写升级工具的一般方法是什么?

ada*_*daf 5 java installer

我需要为一个简单的Java应用程序编写升级工具.它应该在现有的安装目录上工作,并更新属性和二进制文件.它不应该破坏现有目录以允许"撤消"以防它在进程中失败.

我正在考虑一般的以下算法:

  1. 在现有目录旁边创建新目录
  2. 将新二进制文件解压缩到新目录中
  3. 复制并合并需要从旧目录复制到新目录的任何内容
  4. 将旧目录重命名为whatever.tmp.random#
  5. 将较新的目录重命名为较旧的目录的原始名称
  6. 删除旧目录

是否有已知的模式或free-ish第三方软件包来进行Java升级?我不想/需要昂贵的安装程序产品.

Zac*_*tta 1

您对于如何进行升级的想法非常准确。由于升级过程对于您的应用程序来说是独特的,因此第三方库等可能不会太有用。我建议只编写自己的升级方法。