代码之家  ›  专栏  ›  技术社区  ›  Luís Soares Cilan

如何避免或修复与Int vs Integer相关的Kotlin警告

  •  3
  • Luís Soares Cilan  · 技术社区  · 7 年前

    我有一个Spring Boot 2.0.0/Kotlin/Gradle项目。 注入整数时出现警告。我知道 reason 但不知道如何解决。有没有更好的注射方法 @Value s 谢谢

    警告:

    \src\main\kotlin\com\tech\stands\PicturesDownloader.kt: (22, 31): This class shouldn't be used in Kotlin. Use kotlin.Int instead.
    

    代码:

    abstract class PicturesDownloader {
    
        @Value("\${cache.adpics.concurrent}")
        lateinit var MAX_CONCURRENT: Integer
        @Value("\${cache.adpics.max}")
        lateinit var MAX_AD_PICS: Integer
    }
    

    如果没有办法修复,有没有办法抑制它?

    1 回复  |  直到 7 年前
        1
  •  7
  •   Zoe - Save the data dump 张群峰    7 年前

    如果要抑制它,可以使用以下注释:

    @Suppress("PLATFORM_CLASS_MAPPED_TO_KOTLIN")
    

    我不熟悉Spring Boot和价值注入系统,所以我不确定这是否可行。将值设置为0,使用 Int 并删除lateinit。因为它仍然是一个var,所以在创建之后仍然可以设置它,这意味着一旦创建了类,值注入应该能够设置它。

    @Value("\${cache.adpics.concurrent}")
    var MAX_CONCURRENT: Int = 0