Java 弹簧@Autowire在Kotlin中不工作

Java 弹簧@Autowire在Kotlin中不工作,java,spring,kotlin,Java,Spring,Kotlin,对于我的大学任务,我需要使用各种注入依赖项的方法,我一直使用autowire注释,因为它说依赖项尚未初始化。我的代码: class TeleporterDeliveryMethod: DeliveryMethod { @Autowired lateinit var teleporter: Teleporter override fun deliver(pkg: Package): Int { teleporter.teleport(pkg)

对于我的大学任务,我需要使用各种注入依赖项的方法,我一直使用autowire注释,因为它说依赖项尚未初始化。我的代码:

class TeleporterDeliveryMethod: DeliveryMethod {
    @Autowired
    lateinit var teleporter: Teleporter

    override fun deliver(pkg: Package): Int {
        teleporter.teleport(pkg)
        return 0
    }
}
传送机类别:

class Teleporter3000 : Teleporter {
    override fun teleport(pkg: Package) {
        println("Teleporting package ${pkg.id}...")
    }
}
我还用xml定义了这一点:

<bean id="teleporterDeliveryMethod" class="app.delivery.TeleporterDeliveryMethod"/>
<bean id="teleporter" class="app.delivery.Teleporter3000" scope="prototype"/>
甚至自动连接也可以在xml中工作:

<bean id="teleporterDeliveryMethod" class="app.delivery.TeleporterDeliveryMethod" autowire="byType"/>

bean声明中缺少

<bean id="teleporterDeliveryMethod" class="app.delivery.TeleporterDeliveryMethod" autowire="byType"/>