有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何为jar文件生成校验和

我们想实现这样一个功能:当用户第一次运行应用程序时,应用程序将从服务器下载一个jar文件到本地PC并加载jar文件,但当用户再次运行应用程序时,应用程序可以区分本地文件夹中的jar文件内容是否与服务器上的jar文件内容相同,如果不再次下载,则从本地文件夹加载;若并没有,应用程序将下载它并更新本地一个(服务器和本地的jar文件名必须相同)。目前我能想到的一个解决方案是使用校验和,即应用程序生成本地jar文件的校验和,然后从服务器获取服务器jar文件的校验和,检查它们是否相同,如果相同,则不再下载,如果不下载并更新。有没有一种简单的方法来生成jar文件的校验和?或者是否有其他更好的解决方案用于此功能?谢谢


共 (5) 个答案

  1. # 2 楼答案

    计算jar校验和与计算任何文件的校验和相同。但是看起来你需要Java Web Start,它会处理好一切

  2. # 3 楼答案

    如果您使用maven构建jar文件,那么有一个maven插件用于生成已编译jar的校验和Maven Plugin Link

    对于下载的jar,您可以在本地保存而不是生成jar校验和。每次需要检查jars校验和是否更改时,从服务器获取校验和并向it发送请求,如果更改,则下载新的校验和

  3. # 5 楼答案

    似乎我可以使用“java.util.zip.CRC32”来获取jar文件的校验和值。但我不确定两个jar文件的校验和值是否相同,但实际上这两个jar文件是不同的(内容有点不同)