自定义项目my-jetcache-starter包后,jetcache无法使用starter包中的默认配置进行初始化

vaqhlq81  于 22天前  发布在  其他
关注(0)|答案(4)|浏览(13)

您好,项目中有多个工程需要使用jetcache,所以抽取了 my-starter-jetcache包,并再start包中指定了默认jetcache配置文件但是不生效还需要各个项目单独配置,请问如何解决

@configuration
@EnableMethodCache(basePackages = "com.xxx")
@EnableCreateCacheAnnotation
@propertysource(factory = YamlPropertySourceFactory.class, value = "classpath:xx-jetcache.yml")
public class JetCacheConfiguration {
public JetCacheConfiguration() {
System.out.println("JetCacheConfiguration容器启动初始化244。。。");
}
}
debug代码看start包中的配置未被获取到,导致下边import未被初始化

@import({RedisAutoConfiguration.class,
CaffeineAutoConfiguration.class,
MockRemoteCacheAutoConfiguration.class,
LinkedHashMapAutoConfiguration.class,
RedisLettuceAutoConfiguration.class,
RedisSpringDataAutoConfiguration.class,
RedissonAutoConfiguration.class})

to94eoyn

to94eoyn1#

starter是通过jetcache-autoconfigure/src/main/resources/META-INF下面的配置文件找到JetCacheAutoConfiguration的,不同的spring版本要的文件不一样,你自己看一下吧

你也可以不用starter,看下文档

ef1yzkbh

ef1yzkbh2#

大佬我可能没有描述清楚,我是要自己做一个自定义的【my-starter-jetcache】,这样其他项目只要引入我的start包就有jetcache的功能了,不用再配配置文件了,不是您的jetcache-starter包,类似于下边这个项目

flvlnr44

flvlnr443#

我不能帮你做这个,但是在2楼我已经告诉你要点了,有两种办法。
用类似starter的方式参考jetcache-autoconfigure;或者不用starter的方式自己组装配置,参考下文档里面的“快速入门”。

j1dl9f46

j1dl9f464#

我自己封装了【my-starter-jetcache】
问题是【my-starter-jetcache】配置的yml文件 jetcacheAutoconfigure获取不到,导致jetcache没有正确初始化无法使用

快速入门是每个spring boot项目配置到application.yml中,这么配是没有问题的

相关问题