我有使用 Spring-boot、Maven 和 Kotlin 构建的项目。我想在 Maven 项目中公开一些服务和 FeignClients,以便其他人可以使用它们。
对于具有 @Service 之类的注释的类,效果很好。但是我还需要公开 FeignClients,它们用 @FeignClient 注释,但看起来其他项目无法注入这些客户端。我必须在我的 pom.xml 中配置一些东西吗?我正在使用 spring-cloud-starter-openfeign
这是一些代码。我的 FeignClient 看起来像:
...
@FeignClient(name = "MyAPIClient", url = "\${url}", configuration = [MyApiClientConfiguration::class])
interface MyAPIClient {
...
我尝试将该客户端注入到另一个项目中,如下所示:
...
@Service
class MyService(val myAPIClient: MyAPIClient) {
...
错误很清楚。它说,没有名为 MyAPIClient 的 bean。所以它不可见或不可用。“考虑在你的配置中定义一个 'com.mycomp.MyAPIClient' 类型的 bean。”
我是否必须明确配置某些内容才能将 OpenFeignClient 公开给我的 pom.xml 中的其他项目?
谢谢你的帮助