diff --git a/mateclaw-server/src/main/java/vip/mate/tool/document/GeneratedFileCache.java b/mateclaw-server/src/main/java/vip/mate/tool/document/GeneratedFileCache.java index 6fa7d43f..e539eda4 100644 --- a/mateclaw-server/src/main/java/vip/mate/tool/document/GeneratedFileCache.java +++ b/mateclaw-server/src/main/java/vip/mate/tool/document/GeneratedFileCache.java @@ -82,8 +82,12 @@ public class GeneratedFileCache { */ private final Map entries = Collections.synchronizedMap( new LinkedHashMap<>(16, 0.75f, true) { + // Fully qualify the value type: inside a LinkedHashMap subclass the + // inherited java.util.HashMap.Entry node type shadows the outer + // GeneratedFileCache.Entry record, so a bare `Entry` here resolves to + // the raw Map.Entry and the override silently fails to match. @Override - protected boolean removeEldestEntry(Map.Entry eldest) { + protected boolean removeEldestEntry(Map.Entry eldest) { return size() > MAX_MEMORY_ENTRIES; } });