diff --git a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/cache/JCacheCacheConfiguration.java b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/cache/JCacheCacheConfiguration.java index d4a6a6fc41e..5ecc03e968e 100644 --- a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/cache/JCacheCacheConfiguration.java +++ b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/cache/JCacheCacheConfiguration.java @@ -77,15 +77,7 @@ class JCacheCacheConfiguration { @Bean @ConditionalOnMissingBean public CacheManager jCacheCacheManager() throws IOException { - CachingProvider cachingProvider = getCachingProvider(this.cacheProperties - .getJcache().getProvider()); - Resource configLocation = this.cacheProperties.resolveConfigLocation(); - if (configLocation != null) { - return cachingProvider.getCacheManager(configLocation.getURI(), - cachingProvider.getDefaultClassLoader(), - createCacheManagerProperties(configLocation)); - } - CacheManager jCacheCacheManager = cachingProvider.getCacheManager(); + CacheManager jCacheCacheManager = createCacheManager(); List cacheNames = this.cacheProperties.getCacheNames(); if (!CollectionUtils.isEmpty(cacheNames)) { for (String cacheName : cacheNames) { @@ -96,6 +88,18 @@ class JCacheCacheConfiguration { return jCacheCacheManager; } + private CacheManager createCacheManager() throws IOException { + CachingProvider cachingProvider = getCachingProvider(this.cacheProperties + .getJcache().getProvider()); + Resource configLocation = this.cacheProperties.resolveConfigLocation(); + if (configLocation != null) { + return cachingProvider.getCacheManager(configLocation.getURI(), + cachingProvider.getDefaultClassLoader(), + createCacheManagerProperties(configLocation)); + } + return cachingProvider.getCacheManager(); + } + private CachingProvider getCachingProvider(String cachingProviderFqn) { if (StringUtils.hasText(cachingProviderFqn)) { return Caching.getCachingProvider(cachingProviderFqn);