2009-06-04 25 views
4

每次我們更新我們的Java應用程序(Java客戶端和Java服務器)時,都會遇到一些客戶端的問題。 1% - 2%不加載新的jar文件。這發生在小程序中,也與Java Web Start一起發生。如果清除Java Cache,則所有工作都正常。爲什麼有些時候Java不會要求新版本的jar文件?

任何想法爲什麼Java不會在每次啓動時檢查新的jar文件?

回答

2

這可能會有問題解決,但有一個簡單的解決方法。不要依賴正確的緩存更新,只要確保JAR文件名包含應用程序的版本/內部版本號。新版本的applet的JAR文件將有效地存在於其他URL上(您還必須更改引導程序Web頁面)。

+0

這不會造成其他奇怪的問題嗎? – asalamon74 2009-06-04 18:25:55

1

我一直在那裏,100%保證工作的唯一解決方案是有一個不同的路徑/ URL到您的資源(罐子,圖像等)。沒有人能保證它不會成爲緩存機制中的錯誤(如果你在每個2-3版本的JDK更改列表中查看與緩存機制相關的信息)。

所以與去(最後修改時間是在罐子URL結尾的字符串只是追加),你不會有任何問題:

例如:http://myserver/applet/codebase/your_jar.jar?v=2487387543434和下一個版本將是http://myserver/applet/codebase/your_jar.jar?v=343438534545455 < - 這是jar的最後修改時間。

相關問題