list=1
*获取最新版本maven-compiler-version(撰写本文时为版本 3.13.0)
*设置maven.compiler.proc具有值的属性full。
/list
b否则:/b
来自 Lombok 和 Java 23 的Maven编译错误如下所示:
codeINFO --- compiler:3.13.0:compile (default-compile) @ sat-core ---
WARNING Parameter 'forceJavacCompilerUse' (user property 'maven.compiler.forceJavacCompilerUse') is deprecated: Use forceLegacyJavacApi instead
INFO Recompiling the module because of changed source code
INFO Compiling 50 source files with javac debug parameters release 23 to target\classes
INFO -------------------------------------------------------------
ERROR COMPILATION ERROR :
INFO -------------------------------------------------------------
ERROR spring-advanced-training\sat-core\src\main\java\com\github\aha\sat\core\aop\BeverageLogger.java:21,2 error: cannot find symbol
symbol: variable log
location: class BeverageLogger
...
INFO 16 errors
INFO -------------------------------------------------------------
INFO ------------------------------------------------------------------------
INFO BUILD FAILURE
INFO ------------------------------------------------------------------------
INFO Total time: 3.090 s
INFO Finished at: 2024-09-26T08:45:59+02:00
INFO ------------------------------------------------------------------------
ERROR Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0:compile (default-compile) on project sat-core: Compilation failure: Compilation failure:
ERROR spring-advanced-training\sat-core\src\main\java\com\github\aha\sat\core\aop\BeverageLogger.java:21,2 error: cannot find symbol
ERROR symbol: variable log
ERROR location: class BeverageLogger/code
编译错误是由 Java 23 中注解处理行为的变化引起的。
请参阅 JDK 23 发行说明和以下声明:
从 JDK 23 开始,只有在对注释处理进行了某些显式配置或在 javac 命令行上提出了运行注释处理的显式请求后,才会运行注释处理。 这改变了现有的默认行为,即通过搜索类路径来运行注释处理,而不需要任何与注释处理相关的显式选项。
更多url=https://github.com/projectlombok/lombok/issues/3752here/url.
解决办法:
code
...
...
关键配置:
list
*
*
/list
本文介绍了使用 Lombok 库和升级到 JDK 23 相关的问题。完整的更改(但还有更多更改)可在此url=https://github.com/arnosthavelka/spring-advanced-training/commit/29e47231f94556ff08173d992da9a4384c855816?diff=split&w=0#diff-49d7e9283623afcbf89d5cc8019b80174f5dd3379d51f01764713f5f5e69a992R21GitHub /url提交中查看。