自定义 Lombok 扩展需要安装 Lombok 包吗?

5
我一直在尝试向Lombok添加自定义注释。我的起点是GitHub上源代码的一个分支。
我添加了一个注释,它可以正常工作。我可以使用包含的eclipse启动器(或者构建一个jar并将其交换到我的eclipse.ini中)来测试并查看结果:我已经成功地将一个方法插入到一个类中。
现在,这只有在我将我的额外处理程序类放在包下时才能正常工作。如果我把它们放在另一个包下,它们就不会工作。我可以创建一个新的物理源目录,调整构建脚本以适当地包含它,并让我的新类住在那里,只要它在逻辑上将新类打包到lombok下。
为什么会这样?有没有办法绕过去?我想将我编写的任何附加内容分离到一个新的顶级包中,以使它们与官方的lombok扩展区分开来。
1个回答

4
由于Eclipse中的类加载器问题,Lombok修补了Equinox类加载器,以从不同位置加载lombok包中的类。这是硬编码的。因此,您的扩展程序也必须在lombok包中,或者您需要修改EclipsePatcher代码以包括您自己的包。
完全披露:我是Project Lombok开发人员之一。

谢谢提供信息,直接从源头获取真是太棒了!我会尝试将我的程序包添加到那个补丁代码中,看看是否有效。 - Tom Tresansky

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接