Tomcat
Tomcat TldScanner 中的忽略目錄
我執行一個基於 Java 的 CMS,它將記憶體的圖像放在 WEB-INF 文件夾中,特別是在
/WEB-INF/imagecache/
. 不幸的是,這個目錄變得非常大,有很多嵌套路徑,並且 Tomcat 重新啟動變得非常緩慢 - 將日誌級別設置為org.apache.jasper.servlet.TldScanner.level
FINE 說明了原因,有大量這樣的消息:16-Mar-2022 13:50:56.109 FINE [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanResourcePaths No TLD files were found in resource path [/WEB-INF/imagecache/<snip>/].
有沒有辦法完全禁止特定目錄中的 TldScanner?
scanResourcePaths
將始終掃描 下的每個目錄和文件/WEB-INF/
,除了/WEB-INF/classes/*
和/WEB-INF/lib/*
。這些值被硬編碼到程式碼中,因此您無法更改它們。更好的選擇是不污染
WEB-INF
目錄,而是為記憶體數據指定一個外部目錄。如果您出於任何原因需要重新部署應用程序,這具有不會失去所有記憶體的額外優勢。