Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
一个适合java的UpdateLancher是什么样子的?_Java_Version_Updates_Launcher - Fatal编程技术网

一个适合java的UpdateLancher是什么样子的?

一个适合java的UpdateLancher是什么样子的?,java,version,updates,launcher,Java,Version,Updates,Launcher,我正在为一个java.jar应用程序开发一个更新启动器。我有几个.jar档案和一个main.jar。我的启动器在更新时添加/替换必要的JAR 我只是不知道应该遵循什么标准。所以我将描述这个过程是如何工作的,如果我忘了什么,你可能会告诉我 从ftp更新服务器加载并比较version.xml文件 在两个version.xml文件的帮助下列出更新的项目 检查(确保)那些仍然有效的文件是否真的存在于硬盘上(或者将它们添加到需要下载的项目列表中…无论如何都不应该发生) 创建需要下载的文件列表(这些项目以压

我正在为一个java.jar应用程序开发一个更新启动器。我有几个.jar档案和一个main.jar。我的启动器在更新时添加/替换必要的JAR

我只是不知道应该遵循什么标准。所以我将描述这个过程是如何工作的,如果我忘了什么,你可能会告诉我

  • 从ftp更新服务器加载并比较version.xml文件
  • 在两个version.xml文件的帮助下列出更新的项目
  • 检查(确保)那些仍然有效的文件是否真的存在于硬盘上(或者将它们添加到需要下载的项目列表中…无论如何都不应该发生)
  • 创建需要下载的文件列表(这些项目以压缩形式存在于服务器上)
  • 将所有需要的文件下载到/temp文件夹
  • 将所有文件解压缩到/temp/Unpack
  • 将所有解包文件移动到/data文件夹(或它们所属的位置)
  • 更新local version.xml
  • 检查所有文件是否与实际版本文件列表匹配
  • 我真的不知道我是不是忘了什么?如果一些用户在/data中乱动文件,我的更新程序会意识到这一点,并提出一个“修复更新”,将所有丢失的文件重新下载。但是,如果用户在version.xml上乱搞呢?我应该把它加密保存。是否有必要保持从更新服务器下载的version.xml处于打开状态,以便在检查版本和更新时没有人可以更改?还是我太担心这些了


    到目前为止,所有这些都有效吗?补丁后,它是否足够安全,不会在用户pc上创建混乱的安装?

    您是否打算使用Java 1.6中的System Tray类通知用户更新?对我来说,这看起来像是这样(有点像Eclipse项目在IDE中的工作方式)。同样,JVisalV.M.EXE工具(附带JDK)是这类事情的一个很好的例子,也许你可以从中得到一些想法,尽管我怀疑它是用C++编码的。它不像一个后台更新程序。它是一个应用程序启动器,在必要时启动程序时检查更新。我做这个项目是为了学习更多关于客户机/服务器应用程序编程的知识。作为其中的一部分,我的客户有一个UpdateLancher。但我不确定我的解决方案是否“专业”。我在哪里可以阅读现有的解决方案,如equinox和其他解决方案如何进行更新工作?我只希望能够构建一个与商业产品质量相似的更新程序。:)我不是一个好问的人。您可能会考虑试用这个基于Maven的OSGI内核:。这是一个学习曲线,但它看起来现代对我来说。