2012年1月6日 星期五

更改 gwt.xml 需 refresh 兩次才見效

測試環境:GWT 2.4.0、Eclipse 3.7、GPE 2.5、GWT Developer Plugin 1.0.9738(Chrome)

今天輾轉發現 gwt.xml 導致的奇妙問題:
在 Development Mode 下,修改 gwt.xml 的內容,browser 第一次 refresh 依然保持原設定,第二次 refresh 才會呈現修改後的結果。
已知會造成這個現象的是 <stylesheet> 以及 theme 的 <inherits>。<entry-point> 不會有這個問題,其餘未測。

由此延伸出這些測試:
  • 如果單純修改 <stylesheet> 的 CSS 檔案、在第一次 refresh 就會呈現修改結果。
  • 以 Chrome Developer Tools 觀察:<stylesheet> 的 CSS 檔案以及 theme 對應的 CSS 檔案,都是由 foo.nocache.js 所呼叫
  • 修改 client 下的 .java 檔,在第一次 refresh 就會呈現修改結果......
最大的爆點還是在於為甚麼是「第二次」呢?需要重開 Development Mode 之類的行為才會正確,還比較合邏輯些?GWT 的 code server 到底做了什麼啊啊啊啊....... <囧>

ps. 雖然有點多餘,不過 Mac 跟 Windows XP 的測試結果一樣......

沒有留言:

張貼留言