我相信我在某处读到,Lombok 注释通常应该放在类或其他代码元素上的任何其他注释之前,因为它们应该首先应用。这样,其他注释就可以考虑 Lombok 生成的代码。
ChatGPT 同意。但是,我再也找不到更权威的来源了。
有吗?
如果问题是:注释的顺序是否有影响,那么答案显然是否定的。 ChatGPT 是错误的,问 ChatGPT 这类问题是一个非常糟糕的问题(关于 LLM,您需要了解的是,他们基本上会不断搜索,直到得到答案。他们无法告诉您他们不知道如果他们不知道,他们最终会凭空编造一个答案,然后‘他们知道吗’——而这只是所有关于幻觉的知识的一小部分)。 如果问题是:是否应该,这是一个风格/意见问题,因此不适合 SO。
重要的是注释处理器的运行顺序。这个顺序不是由注释的顺序决定的,甚至不是由
-proc:
命令行选项的顺序决定的。这或多或少是任意的。
在像同时使用lombok和mapstruct这样的情况下,顺序很重要(lombok必须首先运行),mapstruct和lombok尝试一起工作来找出mapstruct任意先运行的有问题的情况,并让MS将自己延迟到下一轮恢复正常秩序。