我有一个包含多个 Maven 模块的项目,每个模块都实现了单元测试。它们通过父模块相互依赖。我使用 Lombok 为我的模型生成所有样板代码,并且通过单元测试,我没有涵盖这些模型上的 @Getters 和 @Setter。
我知道,要排除这些并提高覆盖范围,您可以使用设置 lombok.addLombokGenerateAnnotation = true
添加 lombok.config。我在父模块中添加了它,但这似乎不起作用。有没有办法为所有模块配置这个?
我还尝试在所有模块中添加不同的 lombok.config 文件,但它仍然不起作用。这个问题主要影响 SonarQube 的覆盖范围,因为它不知道应该忽略这些未使用的 getter 和 setter。
PS:在成为多模块项目之前,该项目是一个简单的maven项目,并且这个lombok.config有效,覆盖范围很好。将项目转移到多模块方法后,单元测试中没有任何变化。
最佳答案
任何lombok.config
文件只会影响该目录或以下目录中的java文件。在 super 项目中拥有配置文件不会影响子项目或模块中的文件,除非这些源路径低于父项目的源路径,我认为情况并非如此。
行 lombok.addLombokGenerateAnnotation = true
需要位于每个受影响的源目录中的每个 lombok.config
文件中。
关于java - 如何修复多模块 Maven 项目中的 Lombok 覆盖率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63227056/