代码之家  ›  专栏  ›  技术社区  ›  Jezor

Lombok中的Val在IntelliJ中产生“不兼容类型”错误,但编译仍然良好

  •  8
  • Jezor  · 技术社区  · 8 年前

    我找到了这段代码:

    Class<? extends Enum> enumClass = Class.forName(Charsets.class.getName())
                                           .asSubclass(Enum.class);
    

    val enumClass = Class.forName(Charsets.class.getName())
                         .asSubclass(Enum.class);
    

    我得到了这个错误:

    enter image description here

    令人惊讶的是,代码编译得很好,使用它的测试通过了。

    我的问题是:我可以安全地使用这些代码,还是应该恢复到原始代码?

    我正在使用最新的(此时)InteliiJ:

    IntelliJ IDEA 2016.3

    建造#IU-163.7743.44,建造于2016年11月17日

    JRE:1.8.0_112-release-408-b2 amd64

    JVM:JetBrains s.r.o的OpenJDK 64位服务器虚拟机

    和Lombok插件:

    Lombok插件

    版本:0.13.16

    2 回复  |  直到 8 年前
        1
  •  4
  •   Darren Forsythe    5 年前

    Preferences > Plugins > 安装的最新版本 龙目岛 插件 智能

        2
  •  3
  •   Michael Piefel    6 年前

    确认与合作 IntelliJ IDEA 2018.1.1 Lombok插件0.17-2018.1