我正在使用 CF10 应用程序并尝试定义应用程序特定的类路径以使用CF10 中引入this.javaSettings
的 功能加载 JAR 。
从 Application.cfc:
THIS.javaSettings = {
LoadPaths = [".\java_lib\",".\java\myjar.jar"],
loadColdFusionClassPath = true,
reloadOnChange = false
}
这很好用,我可以在应用程序的基础上定义 JAR。但是,每次我重新加载应用程序(例如,如果我调用applicationStop()
)时,CF 似乎都会保留所有加载的 JAR/类,同时重新加载它们——这意味着在多次重新加载后,我不可避免地会得到一个内存不足 Perm Gen 错误。
有没有人经历过这个?我通过更新 GC 策略来启用 permgen 收集尝试了通常的方法:
-XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled