每当我们更新Java应用程序(Java客户端和Java服务器)时,我们都会遇到一些客户问题。 1% - 2%不会加载新的jar文件。这适用于applet以及Java Web Start。如果清除Java Cache,那么一切正常。
任何想法为什么Java不会在每次启动时检查新的jar文件?
答案 0 :(得分:2)
这可能有问题需要解决,但有一个简单的解决方法。不要依赖正确的缓存更新,只需确保JAR文件名包含应用程序的版本/内部版本号。新版本的applet的JAR文件将有效地存在于其他URL上(您还必须更改引导程序Web页面)。
答案 1 :(得分:1)
我一直在那里,100%保证工作的唯一解决方案是为你的资源(罐子,图像等)提供不同的路径/网址。没有人可以保证在缓存机制中不会出现错误(如果你每隔2-3个版本查看一次JDK更改列表,就会发现与jar缓存机制有关的东西)。
顺便说一句(只是将最后修改时间作为字符串添加到jar url的末尾),你就不会有任何问题:
Ex:http://myserver/applet/codebase/your_jar.jar?v=2487387543434和下一个版本它将是http://myserver/applet/codebase/your_jar.jar?v=343438534545455< - 这是jar的最后修改时间。