当前位置: 首页 > 面试题库 >

Lombok的Gradle不推荐使用的注释处理器警告

廉展鹏
2023-03-14
问题内容

升级到gradle 4.7之后,我以前没有警告的版本现在发出以下警告:

在编译类路径上检测到以下注释处理器:“ lombok.launch.AnnotationProcessorHider $
AnnotationProcessor”和“ lombok.launch.AnnotationProcessorHider $
ClaimingProcessor”。 不建议在编译类路径上检测注释处理器,Gradle 5.0将忽略它们
。请改为将它们添加到注释处理器路径。如果您不打算使用注释处理器,则可以使用’-proc:none’编译器参数来忽略它们。

似乎不赞成使用注释处理器,并且gradle 5.0版将不支持注释处理器。

我的项目使用了lombok,它需要注释处理器,因此使用-proc:none不是一种选择。发行Verison 5.0时,都没有停止使用Gradle。

我如何:

  • 停止警告,并
  • 确保我的项目将在将来的Gradle版本中继续构建?

问题答案:

将lombok依赖项类型从更改compileannotationProcessor,因此build.gradle文件中的依赖项部分应如下所示:

dependencies {
    compileOnly('org.projectlombok:lombok:1.16.20')
    annotationProcessor 'org.projectlombok:lombok:1.16.20'
    // compile 'org.projectlombok:lombok:1.16.20' <-- this no longer works!
    // other dependencies...
}


 类似资料:
  • 升级到4.7级后,我以前的无警告版本现在发出以下警告: 在编译类路径上检测到以下注释处理器:'lombok.launch.annotationProcessorHider$annotationProcessorHider'和'lombok.launch.annotationProcessorHider$ClaimingProcessor'。不赞成在编译类路径上检测注释处理器,Gradle5.0将忽

  • 我喜欢使用Lombok,但它需要在IDEs设置中启用注释处理器。因为开发人员使用不同的IDE,CI/CD有自己的编译流程,而且我真的不想解释初级开发人员为什么需要选中此复选框,我正在寻找一种方法来避免选中此复选框。理想的情况下,我想让一个年轻人来运行git clone,然后/格拉德卢跑。Gradle是否可以完全设置注释处理器(无需手动单击)? 如果它能在比IntelliJ IDEA更多的地方工作,

  • 在Spring MVC中,类DefaultAnnotationHandlerMapping已被弃用。文档(http://docs . spring . io/spring/docs/current/javadoc-API/org/spring framework/web/servlet/MVC/annotation/defaultannotationhandlermapping . html)说:

  • null 我的git和Gradle技能是初学者水平。我将非常感谢对这项任务的任何帮助。谢谢你。

  • 我有一把刀: 问题是,当我试图使用DAO进行加载调用时,使用DynamoDBMapper以field d1作为哈希键来获取项目,它会抛出一个DynamoDBExc0019,说:为公共DAO. getField2()找到了空键,但实际上表的值对应于field d2。问题,这是因为Lombok注释而不是手动突变代码,还是一般来说我们一起使用Lombok和DynamoDBAnnotions?

  • 我在https://start.Spring.io/上创建了新的 包装器属性中有。 已不推荐在编译类路径上检测批注处理器。Gradle5.0将忽略编译类路径上的注释处理器。在编译类路径上检测到以下批注处理器:“org.springframework.boot.configurationprocessor.configurationMetadataAnnotationProcessor”和“org.