我在我的项目中使用了龙目岛,但我的同事不同意使用它,他的理由是(来自lombok文件的争议)
这两个项目Lombok都利用非公共API来完成他们的巫术.这意味着使用后续IDE或JDK版本可能会破坏Project Lombok的风险.
但这是一篇2010年写的非常古老的文档,也许现在已经解决了这个问题,所以我想知道Lombok是否支持Java 9并且它仍然使用非公共API:s?
Nic*_*lai 46
Lombok项目存在跟踪Java 9支持的问题.截至2018年1月9日和版本1.16.20,Lombok正式支持Java 9.来自更改日志:
- 平台:在新的IntelliJ,Netbeans和Gradle中更好地支持jdk9.
- BREAKING CHANGE:lombok配置密钥
lombok.addJavaxGeneratedAnnotation现在默认为falsetrue而不是true.随着JDK9的发布,Oracle打破了这一注释,需要进行这一重大变革.- BREAKING CHANGE:
lombok.anyConstructor.suppressConstructorProperties现在不推荐使用lombok配置密钥true,默认情况下,默认情况下,lombok不再自动生成@ConstructorProperties注释.lombok.anyConstructor.addConstructorProperties现在存在新的配置密钥;true如果你想要旧的行为,请将其设置为.随着JDK9的发布,Oracle或多或少打破了这个注释,需要进行这种突破性的改变.- 开发:现在可以在JDK1.9上编译lombok.
(目前,它不是模块,所以你需要把它放在类路径上.感谢Tos的回答,首先提到这个.)