繁体   English   中英

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

[英]How can I run lombok features in my executable jar file?

假设我有一个包含 10 个或更多参数的构造函数,并且我在条件 select 查询中使用它来获取数据。 现在的问题是我想删除我的构造函数,因为它给我带来了声纳问题。

所以我尝试了 Lombok 依赖项, @AllArgsConstructor它在我的 IDE 中工作,但是当我创建 jar 文件时,它没有被 JPA 查询使用。

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

要么

更改不使用构造函数的 select 查询,

要么

任何其他更好的方法

Lombok 是一个编译时事件。 一旦你的代码被编译(你有 class 个文件),lombok 不应该在那里/不会做任何事情。 从这个意义上说,龙目岛不是图书馆。 您也不会将“javac”与您的应用程序一起发布。

如果 lombok 是编译的一部分,那么 lombok 就会做它的事情。 如果不是,那么您的编译器会产生错误; 毕竟,它不知道@AllArgsConstructor是关于什么的。 所以,如果你没有观察到任何编译错误,那么 lombok 就做了它的事情*。

其次,sonar 是一种 linting 工具。 它可以帮助您。 如果在您认为这是最好的方法的地方编写代码是“让您失望”,那么请告诉声纳停止抱怨它。 它是供您使用的工具; 不是监狱。

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

*) 有可能,但需要一些工作,告诉 javac 有可用的 lombok 类,但不要将其作为注释处理器运行。 但是,如果您确实做到了这一点,那么 lombok 就不会改变您的任何课程。 我认为情况并非如此,因为您需要 go 使用大量命令行开关来实现这一目标。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM