1. 程式人生 > >關於Jetty鎖定靜態檔案如JS,css外聯檔案的問題解決辦法.;修改後不需要每次重啟jetty伺服器.適合window系統

關於Jetty鎖定靜態檔案如JS,css外聯檔案的問題解決辦法.;修改後不需要每次重啟jetty伺服器.適合window系統

看了廖永峰和其他大神的文章,自己實踐了下,發現的確可行,所以將方法拿出來供大家參考.

用windows系統操作前端時,修改js檔案後,需要將jetty伺服器重啟才能生效.不重啟的話會報一個無法儲存的錯誤.原因是jetty鎖定了已訪問的靜態檔案,如HTML,CSS等,這給頁面設計帶來了不便。

其實Jetty官方站點對此問題已有回答,鎖定檔案據說是為了提高效能,但我覺得快取也不一定需要長時間鎖定檔案,而且效率會非常慢:

如下給出修改步驟:

第一步:找到對應的jar包,如我的jar包是jetty-6.1.25.jar.


第二步:

WinRAR開啟jar包,找到org/mortbay/jetty/webapp/webdefault.xml,解壓出webdefault.xml然後

開啟xml檔案,搜尋useFileMappedBuffer..

之後將true改為false.

第三步,將修改好的webdefault.xml拖回到org/mortbay/jetty/webapp/路徑下面去,關閉WinRAR,然後重新啟動jetty伺服器,修改js檔案就不會報錯,而且直接生效了.

注意:最好在修改直接將jar包複製一個作為備份,以免出現意外後可以添加回原先的內容.