Project Lombok是否适合大型Java项目?

Jac*_*cob 22 java code-generation boilerplate lombok

是否有人使用Project Lombok进行大规模生产系统?它如何影响您的编译过程(即它是否进行双程编译,减慢速度,使其更脆弱)?

小智 37

Lombok不进行双程编译.从技术上讲它会减慢"的编译过程中,它除了在编译时发生的平常的事情上运行,但相比于分析阶段,下阶段,翻译阶段,龙目岛几乎连寄存器.

主要的脆弱性问题是,在没有任何(A)哑(即记事本或差异阅读器),(B)日食,(C)的NetBeans,或(d)运行的javac获得其所有大脑的编辑器中编辑lombokified代码(例如vim with java plugin),它会很糟糕.如果这不适用,减少样板应该只会使你的代码变得不那么脆弱.

免责声明:我是lombok的两个主要开发者之一:)


Syn*_*tax 5

我使用Project Lombok开发了用于大型Java和Swing UI应用程序的Google Web Toolkit(GWT)前端.因为我没有使用@SneakyThrows,所以我在运行时不需要lombok.jar.

使用delombok行为我提供了一个2阶段编译过程.Lombok注释java code => Java code => Javascript

就大型Java项目的适用性而言,为Web前端代码的漫游花费不到2秒,gwt编译过程的其余部分需要大约50秒(这些度量标准来自开发人员工作站).

我们本周正在考虑是否要为其他应用程序提供Lombok支持.构建主应用程序大约需要1个小时(包括在2xIntel E5450的盒子上构建的单元测试,安装程序等).