我知道Spring Boot有很多@Conditional
註釋,例如@ConditionalOnBean
,@ConditionalOnClass
,@ConditionalOnProperty
,ConditionalOnWebApplication
。但我不知道這是如何工作的?條件註釋如何在Spring Boot中起作用?
例如:
@Configuration
@ConditionalOnClass(MyBean.class)
public class MyConfiguration{
// omitted
}
我瞭解,MyConfiguration
將只有MyBean
在我的類路徑被加載。但是,如果MyBean
類不在我的類路徑中,編譯器達到@ConditionalOnClass(MyBean.class)
一行,它將如何編譯和運行,是否會拋出編譯器錯誤?只要我在eclipse中添加這樣的代碼,我就會收到編譯時錯誤。對不起,如果這是太基本的問題,但我不知道我錯過了什麼理解。
您的解釋和鏈接非常有幫助。非常感謝 –