如何调试lombok的val?

4
我在我的项目中广泛使用Lombok。我喜欢它,并希望它得到官方支持,这样维护者就不必使用内部API来继续开发,但这是另一个话题。
偶尔,在使用val(我也经常使用它,因为它可以节省很多打字)时,在编译过程中会遇到以下问题:
Cannot use 'val' here because initializer expression does not have a representable type: Type cannot be resolved

上一次发生在两个位置:
  • 作为返回值,返回一个Map<UUID, List<SomeObject>>的函数
  • 作为返回值,返回一个List<UUID>的函数
我以前已经使用过后者类型的val,也用于比前者更复杂的对象。然而,在这里,不可思议的是,val没有起作用。最终的解决方案就是省略这些地方的val(尽管它在类的其余部分中广泛使用且没有问题)。
因此,问题是:我如何调试Lombok中的val(以及可能的var)?我如何调试它通过生成类型的过程,以找出这是否是Lombok中的错误(我可以尝试修复),还是由于某种原因我的代码库行为异常?
1个回答

0

可能是与val注释处理有一些错误。这里有问题
此外,还有另一个与val有关的错误。没有关于更改val变量值的警告。它只在运行时出现错误。请小心,很容易犯错。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接