我不想在本地 Spring 配置文件中加载一个方法。方法是
@Profile("prod")
@Scheduled(initialDelay = 1000, fixedDelay = 21600000)
public void updateHackalistHackathonData() {
...
}
我在同一位置创建了 application.properties'
、application-local.properties'
和 application-prod.properties
文件src/java/resources
。在 application.properties
中,我提到了 spring.profiles.active=local
。
但是,这个预定方法仍然会执行。我该如何阻止这个?
最佳答案
您需要在类(bean)定义而不是方法本身上添加@Profile("prod")
注释。例如:
@Component
@Profile("prod")
public class HackatonScheduler{
@Scheduled(initialDelay = 1000, fixedDelay = 21600000)
public void updateHackalistHackathonData() {
...
}
}
关于java - 即使未在 Spring Boot 配置文件中指定,也会在 Spring Boot 中加载方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41779673/