我如何在我的可执行jar文件中运行lombok功能?

问题描述 投票:0回答:1

考虑到我有超过10个或更多args的构造函数,并且我在条件选择查询中使用它来获取数据。现在的问题是,我想删除我的构造函数,因为它给了我声纳问题。

所以我尝试了Lombok依赖性,@AllArgsConstructor它在我的IDE中有效,但是当我创建jar文件时,JPA查询并未使用它。

我需要帮助以使lombok在我的project.jar文件中工作,

不使用构造函数的选择查询的变更,

还有其他更好的方法

java spring-boot jpa criteria lombok
1个回答
0
投票

Lombok是一个编译时事件。一旦编译了代码(有了类文件),lombok就不应该在那里了/什么也不会做。从这个意义上说,龙目岛不是一个图书馆。您也不会在应用程序中附带“ javac”。

如果lombok是编译的一部分,则lombok将执行其操作。如果不是,那么您的编译器将生成一个错误;否则,将生成一个错误。毕竟,它不知道@AllArgsConstructor是什么。因此,如果您没有观察到任何编译错误,则龙目岛做到了这一点*。

第二,声纳是一种起绒工具。它可以帮助您。如果在您认为编写代码的最佳方式上“告诉您”编写代码,请告诉声纳,不要再抱怨它了。这是供您使用的工具;不是监狱。

您可以使用javap检查all-args构造函数是否存在。如果是(应该如此),那么您的问题实际上是:如何使我的JPA工具使用该构造函数?

*)可能但需要做一些工作,才能告诉javac使lombok的类可用,但不能将其作为注释处理器运行。但是,如果您能做到这一点,那么lombok就不会改变您的任何班级。我认为情况并非如此,因为您需要使用许多命令行开关来避免这种情况的发生。

© www.soinside.com 2019 - 2024. All rights reserved.