gpt4 book ai didi

java - Spring - 如何将组件从另一个模块注入(inject)到 SpringBoot 应用程序中

转载 作者:行者123 更新时间:2023-12-02 05:29:16 25 4
gpt4 key购买 nike

在我的项目中,我有两个模块:

  • com.demo.shared
  • com.demo.app

在 com.demo.shared 中我有一个组件

@Component
class Address(
@Value("\${config.address.host}") val host: String,
@Value("\${config.address.port}") val port: Int
)

在 com.demo.app 中,我想让 Spring 的 IoC 容器注入(inject)组件

@SpringBootApplication
class Application(address: Address) {
companion object {
@JvmStatic
fun main(args: Array<String>) {
SpringApplication.run(Application::class.java, *args)
}
}

private val client: HttpClient("http://${address.host}:${address.port}/")
}

当我运行应用程序时,出现此错误:

Parameter 0 of constructor in com.demo.app.Application required a bean of type 'com.demo.shared.Address' that could not be found.

我错过了什么?

注意:我标记了 Java,因为即使模块使用 Kotlin,如果有人可以提供要做什么的 Java 示例,我将能够相对轻松地移植它。

最佳答案

看来只需要添加组件扫描注释即可:http://www.springboottutorial.com/spring-boot-and-component-scan

@ComponentScan(“com.in28months.springboot”)

关于java - Spring - 如何将组件从另一个模块注入(inject)到 SpringBoot 应用程序中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50660512/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com