【发布时间】:2018-03-30 18:42:41
【问题描述】:
我创建了一个名为“mycache”的缓存,它应用于我的服务中的一个方法,例如:
@Cacheable(value = "mycache")
public String getValue(String something) {
...breakpoint here...
}
我的application.yml 中也有以下内容:
---
spring:
profiles: dev
cache:
type: NONE
(注意:我也尝试过:无 - 全部小写 - 这也不起作用)
在我的课堂上,我有一个字段显示它是“开发”配置文件:
@Value("${spring.profiles.active}")
private String activeProfiles;
当我第一次调用它时(在调试模式下),它会到达断点,但之后每次都不会(这意味着它没有应用 YAML 设置)。
如何通过配置文件禁用它?
【问题讨论】:
-
您是否检查过您的
env端点以验证类型在运行时设置为none并且没有其他任何事情再次启用缓存? -
@DarrenForsythe 我该怎么做?
-
env端点是 Spring Boot Actuator 的一部分。 docs.spring.io/spring-boot/docs/current/reference/html/… 请注意,如果您使用的是1.5.0或更高版本,则默认情况下端点是敏感的 - 禁用manage.security.disable = false。当自动配置报告设置为none并且没有通过debug = true时,可能还想检查自动配置报告 -
github.com/Flaw101/default-boot-app/tree/caching quiok 上面的示例,请参阅控制台日志,说明 CacheConfiguration(s) 由于缓存类型设置为无而未启用。
标签: java spring spring-boot ehcache spring-cache