为什么@Primary有时候不适用于Kotlin类?
我有最怪的问题。
我有Java类A
,我也有Kotlin类KA
扩展A
,都是@Component
s, KA
也用@Primary
注释。
在一些组件中, KA
是自动装配的,而在其他组件中是A
实际上它比这更奇怪,对于不同的应用程序启动之间的相同的依赖bean,有时候KA
会自动装入,有时是A
如果我用Java重写KA
,那么一切都按预期工作。 所有相关类中的属性名称/构造函数参数名称是相同的: @Autowired A a;
。
也不要紧,如果我的Kotlin实现实现一个通用的接口或扩展基类。
所有Kotlin和Java类都生活在src/main/java
。
Kotlin版本是1.1.2-5
,我用的是jvm8。
- 正确的方法为不可变的构造函数注入Kotlin类
- 我不能在Springboot-Kotlin中排除MongoAutoConfiguration(MongoSocketOpenException)
- Spring Boot将文本/ JavaScript序列化为JSON
- kotlin数据类HttpMessageNotReadableException
- 无法使用Gradle在IntelliJ Community Edition中添加应用程序服务器
- Spring Data JPA:处理其他实体的继承属性
- 相同的其他端点具有不同的PathVariable
- Spring MVC控制器PathVariables上的Java bean验证
- 以编程方式重新启动Spring Boot应用程序/刷新Spring上下文