lombok.jar文件,Lombok是属于Java中的一款实用工具,使用lombok.jar框架可以帮助开发人员消除Java的冗长,可以便捷的帮助到开发人员对java开发工作起到帮助。 文件说明 Lombok 是一种Java™实用工具,可用来帮助开发人员消除Java的冗长,尤其是对于简单的Java对象(POJO) 使用方法 eclipse / myeclipse 手动安装 lombok 1. 将 lombok.jar 复制到 myeclipse.ini / eclipse.ini 所在的文件夹目录下 2. 打开 eclipse.ini / myeclipse.ini,在最后面插入以下两行并保存: -Xbootclasspath/a:lombok.jar -javaagent:lombok.jar 3.重启 eclipse / myeclipse 原理分析 接下来进行lombok能够工作的原理分析,以Oracle的javac编译工具为例。 自从Java 6起,javac就支持“JSR 269 Pluggable Annotation Processing API”规范,只要程序实现了该API,就能在javac运行的时候得到调用。 举例来说,现在有一个实现了"JSR 269 API"的程序A,那么使用javac编译源码的时候具体流程如下: 1)javac对源代码进行分析,生成一棵抽象语法树(AST) 2)运行过程中调用实现了"JSR 269 API"的A程序 3)此时A程序就可以完成它自己的逻辑,包括修改第一步骤得到的抽象语法树(AST) 4)javac使用修改后的抽象语法树(AST)生成字节码文件 lombok本质上就是这样的一个实现了"JSR 269 API"的程序。在使用javac的过程中,它产生作用的具体流程如下: 1)javac对源代码进行分析,生成一棵抽象语法树(AST) 2)运行过程中调用实现了"JSR 269 API"的lombok程序 3)此时lombok就对第一步骤得到的AST进行处理,找到@Data注解所在类对应的语法树(AST),然后修改该语法树(AST),增加getter和setter方法定义的相应树节点 4)javac使用修改后的抽象语法树(AST)生成字节码文件 . 编译工具 1)由“三、原理分析”可知,Oracle javac直接支持lombok 2)常用的项目管理工具Maven所使用的java编译工具来源于配置的第三方工具,如果我们配置这个第三方工具为Oracle javac的话,那么Maven也就直接支持lombok了 3)Intellij Idea配置的编译工具为Oracle javac的话,也就直接支持lombok了。 4)Eclipse中使用的不是Oracle javac这个编译工具,而是自己实现的Eclipse Compiler for Java (ECJ).要想使ECJ支持lombok,得进行设置,具体是在Eclipse程序目录中的eclipse.ini文件中添加如下两行设置: -javaagent:[lombok.jar所在路径] -Xbootclasspath/a:[lombok.jar所在路径]