plugins { id 'java' id 'org.springframework.boot.conventions' } description = 'Spring Boot cache smoke test' def caches = [ 'caffeine': [ 'com.github.ben-manes.caffeine:caffeine' ], 'couchbase': [ 'com.couchbase.client:java-client', 'com.couchbase.client:couchbase-spring-cache' ], 'ehcache': [ 'javax.cache:cache-api', 'org.ehcache:ehcache' ], 'ehcache2': [ 'net.sf.ehcache:ehcache' ], 'hazelcast': [ 'com.hazelcast:hazelcast', 'com.hazelcast:hazelcast-spring' ], 'infinispan': [ 'org.infinispan:infinispan-jcache', 'org.infinispan:infinispan-spring5-embedded' ], 'redis': [ project(':spring-boot-project:spring-boot-starters:spring-boot-starter-data-redis') ] ] dependencies { implementation project(':spring-boot-project:spring-boot-starters:spring-boot-starter-actuator') implementation project(':spring-boot-project:spring-boot-starters:spring-boot-starter-cache') implementation project(':spring-boot-project:spring-boot-starters:spring-boot-starter-web') if (project.hasProperty('cache')) { caches[project.getProperty('cache')].each { runtimeOnly it } } testImplementation project(':spring-boot-project:spring-boot-starters:spring-boot-starter-test') }