【发布时间】:2018-02-13 15:10:12
【问题描述】:
目前有两个不同的模块假设项目 A 和项目 B。项目 B 导入/使用到项目 A 中。目前项目 B 已经有 CacheManager。
项目B
public class CacheConfig {
@Bean
public CacheManager cacheManager() {
// using SimpleCacheManager()
}
}
但现在计划在项目 A 中实现 CacheManager 用于其他目的。
class SomeCacheConfig{
@Bean
public CacheManager someCacheManager(){
// using SimpleCacheManager()
}
}
加载应用程序时抛出以下异常。
java.lang.IllegalStateException: No CacheResolver specified, and no unique bean of type CacheManager found. Mark one as primary (or give it the name 'cacheManager') or declare a specific CacheManager to use, that serves as the default one.
你能帮我如何在多个模块/项目中实现多个缓存管理器吗?
【问题讨论】:
-
为什么必须是唯一的?重用你拥有的缓存管理器。
-
@duffymo,可能以后项目B可以把它拿出来。所以我们在项目 A 中需要新的 cacheManager
-
您想同时使用这两个不同的缓存管理器吗?还是只用一个?
-
@javvano,我想使用两个缓存管理器
标签: java spring-boot caching guava