尝试设置系统属性: net.sf.ehcache.enableShutdownHook = true
因此,您可以在程序的开头添加以下行:
System.setProperty("net.sf.ehcache.enableShutdownHook","true");或者,从命令行传递属性:
java -Dnet.sf.ehcache.enableShutdownHook=true ...
注意,ehcache网站在使用此关闭挂钩时确实提到了一些注意事项:
关闭Ehcache
关闭挂钩何时运行,何时不运行
关机挂钩在以下情况下运行:
- 一个程序正常存在。例如,调用System.exit()或最后一个非守护线程退出
- 虚拟机终止。例如CTRL-C。这对应于在Unix系统上kill -SIGTERM pid或kill -15 pid。
在以下情况下,关闭挂钩将不运行:
- 虚拟机中止
- SIGKILL信号发送到Unix系统上的虚拟机进程。例如kill -SIGKILL pid或kill -9 pid
- 将TerminateProcess调用发送到Windows系统上的进程。
希望它能工作:)



