EhCache的CacheManager冲突

我一台服务器装了两个tomcat一个tomcat里面一个项目,现在启动的时候报这个,这个是不影响我启动的但是缓存好像不好使 我应该怎么配置EhCache

diskStorePath '/usr/local/xiche/xicheapp/temp' is already used by an existing CacheManager either in the same VM or in a different process.

评论区

JFinal

2018-09-05 17:29

这个是 ehcache 使用了同一个 temp 配置,改一下两个项目中的 ehcache.xml 配置,不要使用同一个地方,否则会出问题

航程序员

2018-09-05 17:48

@JFinal 是改diskStore path吗

JFinal

2018-09-05 18:04

@航程序员 ehcahce.xml 中有一个:
< diskStore path="java.io.tmpdir"/ >

改它就行

航程序员

2018-09-05 18:29

@JFinal 我改了这个还是报已有一个缓存了而且现在是我只启动了一个项目

航程序员

2018-09-05 18:31

@JFinal 2018-09-05 18:00:28 [WARN]-[Thread: localhost-startStop-1]-[net.sf.ehcache.DiskStorePathManager.resolveAndLockIfNeeded()]: diskStorePath '/usr/local/xiche/xicheapp/cache' is already used by an existing CacheManager either in the same VM or in a different process.
The diskStore path for this CacheManager will be set to /usr/local/xiche/xicheapp/cache/ehcache_auto_created512992034030214543diskstore.
To avoid this warning consider using the CacheManager factory methods to create a singleton CacheManager or specifying a separate ehcache configuration (ehcache.xml) for each CacheManager instance.一直给我建两个

JFinal

2018-09-05 22:10

通过异常来看,你应该先删掉这两处缓存已存放的文件,我估计你进行过持久化,系统关系时文件还在那里,造成另一个 ehcache 过来的时候原来的那个 ehcache 文件还在那里

如果还解决不了,看一下 ehcache 的官方文档,jfinal 仅仅是对 ehcach 的 API 做一个极薄封装, ehcache.xml 的规则是完全用的 ehcache 原汁原味的规则

航程序员

2018-09-06 10:10

@JFinal 搞定了不是缓存的是 是tomcat项目加载了两遍

JFinal

2018-09-06 10:35

@航程序员 tomcat 加载两次肯定是掉到 tomcat 的坑里去了,看一下这里:
https://my.oschina.net/jfinal/blog/353062

maomi5233

2019-12-11 11:03

楼主怎么解决的,我也遇到了这个问题

热门反馈

扫码入社