当前位置: 首页 > 知识库问答 >
问题:

spring @Import中的Kotlin多个类

钱锐
2023-03-14

我在用科特林。我有两个spring类,com.example。SpringConfigAcom.example.SpringConfigB。我试图将它们导入<code>com.example。SpringConfigParent,但以下任何一项都不起作用:

尝试1,错误:< code >此注释不可重复

@Import(com.example.SpringConfigA)
@Import(com.example.SpringConfigB)
class SpringConfigParent {}

尝试2,错误:<代码>类型不匹配:推断类型为()-

@Import({com.example.SpringConfigA, com.example.SpringConfigB})
class SpringConfigParent {}

Try 3,错误:< code >常量表达式中只能使用“const val ”

@Import(arrayOf(com.example.SpringConfigA, com.example.SpringConfigB))
class SpringConfigParent {}    

Kotlin 中的正确语法是什么?

编辑:正如@jaquelinep建议的那样,我忘记添加::类,尝试一下:

尝试1,错误:< code >此注释不可重复

@Import(com.example.SpringConfigA::class)
@Import(com.example.SpringConfigB::class)
class SpringConfigParent {}

尝试2,错误:<代码>类型不匹配:推断类型为()-

@Import({com.example.SpringConfigA::class, com.example.SpringConfigB::class})
class SpringConfigParent {}

Try 3,错误:< code >类型推断失败。预期的类型不匹配:推断的类型是数组

@Import(arrayOf(com.example.SpringConfigA::class, com.example.SpringConfigB::class))
class SpringConfigParent {}    

共有2个答案

谭建章
2023-03-14

类名末尾缺少.class:

@Import({com.example.SpringConfigA::class, com.example.SpringConfigB::class})
class SpringConfigParent {}

我更新了答案,多亏了伊蒙-斯卡利翁

江雅懿
2023-03-14

具有一个注释的多个导入的语法如下:

@Import(value = [Config1::class, Config2::class])
 类似资料:
  • 我遇到了一个问题,我找不到任何好的解决办法。一些上下文:我们使用几个微服务,其中大多数使用rest客户端。我们发现,他们中的许多人将使用类似的配置来解决类似的问题(即弹性)。当然,我们希望将常见的、大量重复的非业务代码提取到库中。但问题是:如何在库中提取数据类(特别是在使用库的代码库中可能存在这些类的多个实例的情况下)? 下面是一些示例代码: 我想将其导入到一个项目中,以配置2个不同的REST客户

  • 本文向大家介绍python中from module import * 的一个坑,包括了python中from module import * 的一个坑的使用技巧和注意事项,需要的朋友参考一下 但还有另外一个问题 - 你以为你修改了某个变量,其实,被from module import *后的那个并没有被更新,非常危险,因为程序有可能还可以正常运行, 只不过结果错了,到了production才被发现

  • 有没有办法在Kotlin中为多个可为空的变量连锁多个let?

  • 我正在设置一个静态编程语言多平台项目,以便我可以在多个平台中为单个应用程序重用公共代码。在为应用程序构建公共代码时,我提取了一些基类,我希望能够在多个多平台项目中作为库重用。我正在尝试将库作为依赖项添加到Common Main中。有几件事我不明白。 首先:这目前可能吗? 如果是:默认的 stdlib-common 是 jar 文件,对吗?如果没有Java可以在那里使用,为什么jar可以在commo

  • 我在Spring MVC中的controller类中有一个方法。

  • 在我的应用程序中,我调用了4个不同的API(都在不同的主机上)。我希望为每个主机和其他参数(如保持活动状态等)提供一个单独的连接池。我可以使用单个WebClient实现这一点,还是需要4个不同的WebClient实例? 另外,为每个主机设置一个单独的连接池有意义吗?如果没有,我可以使用单个WebClient实现这一点吗?